C语言期末大作业_第1页
C语言期末大作业_第2页
C语言期末大作业_第3页
C语言期末大作业_第4页
C语言期末大作业_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

伊犁师范学院计算机科学系实验训项目报告一、小组成员及分工:姓名:张雁学号:二、指导老师:王慧玲三、说明程序编制要点,以及自己在项目制作中的难点及解决办法:编写的要点:编写N个函数分别用来求平均分;总分按降许序排列;按姓名查找学生的成绩;找出各科最高分的学生姓名,学号等。编写主函数提供不同的选择途径。难点:函数之间的调用,姓名的比较和交换。解决办法:通过参数的传递;用字符串处理函数。 四、说明项目中所涉及的知识点及难点:知识点:基础知识,结构体,选择结构程序设计,循环结构程序设计,数组,字符数组,常用的字符串处理函数,函数的调用。难点:函数的调用,循环程序设计。五、附录源程序:注:必须有一定的注释,说明函数功能以及主要语句所起的作用#include stdio.h#include string.h#define m 5void search(); /*声明按姓名查找学生的信息*/void ave(); /*声明turn out average*/void paixu(); /* 声明score pai mingci*/void maxandmin(); /*声明maxandmin score students number,name and every course score*/struct student /*声明define a struct*/ int num; /*students number */ char name10; int math,english,chinese; /*three course score*/ int no; /* student mingci*/ float sum; float ave;stum;main() int i; int q=0,p; for(i=0;im;i+) printf(num:); scanf(%d,&stui.num); printf(name:); scanf(%s,); printf(input score:); scanf(%d,%d,%d,&stui.math,&stui.chinese,&stui.english); printf(n); system(cls); while(q=0) printf(n); printf(1 find average scoren); printf(2 find sum score paimingn); printf(3 find student name output about student messagen); printf(4 find the max score and min score students messagen); printf(other number exit!n); printf(n); printf(please input number:n); scanf(%d,&p); switch(p) /*用开关语句SWITCH进行选择*/ case 1:ave(stu); break; /*选择1,求平均分*/ case 2:paixu(stu); break; /*选择2,求总分按降序排列*/ case 3:search(stu,m); break; /*选择3,求按姓名查找学生的信息*/ case 4: maxandmin(stu,m); break; /*选择4,求各科的最高分和最 defult :q=1;exit(0); getch();void ave(struct student stu) /*求学生的平均分*/ int i; printf(1 find aveage score:n); printf(numtnametsumtaven); for(i=0;im;i+) /*通过循环语句求学生的总分和平均分*/ stui.sum=0; stui.sum+=stui.math; stui.sum+=stui.chinese; stui.sum+=stui.english; stui.ave=stui.sum/3; printf(%dt%st%.0ft%.1fn,stui.num,,stui.sum,stui.ave); void paixu(struct student stu) /*sum score line*/ int i,j,a; float t; char b10; printf(2 find sum score paimingn); for(i=0;im;i+) stui.no=i+1; /*gei mingci fu chuzhi*/ for(i=0;im-1;i+) for(j=i+1;jm;j+) if(stui.sumstuj.sum) a=stui.num;stui.num=stuj.num;stuj.num=a; t=stui.sum;stui.sum=stuj.sum;stuj.sum=t; strcpy(b,); strcpy(,); strcpy(,b); /*运用字符串复制函数交换学生的姓名*/ printf(numtnametsumtnon); for(j=0;jm;j+) printf(%3dt%st,stuj.num,); printf(%.0f,stuj.sum); printf(t%dn,stuj.no); void search(struct student stu) /*search students name*/ int i; char n10; printf(3 find student name output about student messagen); printf(input name:n); scanf(%s,n); for(i=0;im;i+) /*use “for circulation” search students name*/ if(strcmp(n,)=0) /*用字符串比较函数进行比较*/ printf(numtnametsumtavetmathtchinesetenglishn);printf(%dt%st%.0ft%.1f,stui.num,,stui.sum,stui.ave);printf(t%dt%dt%d,stui.math,stui.chinese,stui.english);break; /*分别输出要查找的学生的学号,姓名,总分,平均分,和各科的成绩*/ Void maxandmin(struct student stu) /*输出各科学生的最高分和最低分*/ int i,a=0,b=0,c=0,d=0,e=0,f=0; int maxm,maxc,maxe,minm,minc,mine; printf(4 find the max score and min score students messagen); for(i=0;im;i+) if(stua.mathstui.math) b=i;minm=stub.math; if(stuc.chinesestui.chinese)d=i;minc=stud.chinese; if(stue.englishstui.english)f=i;mine=stuf.english; printf(the max scorennnumtnametmathtchinesetenglish:n); printf(%dt%st%dn,stua.num,,maxm); printf(%dt%stt%dn,stuc.num,,maxc); printf(%dt%sttt%d,stue.num,,maxe); printf(n); printf(the min score nnnumtnametmathtchinesetenglish:n); printf(%dt%st%dn,stub.num,,minm); printf(%dt%stt%dn,stud.num,,minc); printf(%dt%sttt%d,stuf.num,,mine);一输入学生信息(学号,姓名,各科的成绩)二编译成功进入主菜单:三选择1对学生的成绩求总分,平均分:四选择2对学生信息排序五选择3输入要查找的学生的姓名(这里找的是zj)六选择4求各科成绩的最高分和最低分的学生的信息:六、感想现在,我终于把大作业做好了,虽然做这次作业我花了很多时间但是我十分的高兴,因为收获很多,从开始

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论