C语言综合实验设计报告.docx
- 文档编号:24871265
- 上传时间:2023-06-02
- 格式:DOCX
- 页数:13
- 大小:16.48KB
C语言综合实验设计报告.docx
《C语言综合实验设计报告.docx》由会员分享,可在线阅读,更多相关《C语言综合实验设计报告.docx(13页珍藏版)》请在冰豆网上搜索。
C语言综合实验设计报告
C语言综合实验设计报告(黑体二号)
(以下黑体小二)
题目:
考试成绩综合管理系统
学院:
专业
班级
姓名:
设计日期:
2012年6月21日
总分:
样例:
一、设计题目:
(宋体五号加黑)
考试成绩综合管理系统(宋体五号)
二、题目阐述及设计思路:
本程序由主函数组成,本程序定义了三个结构体类型,在主函数中调用其各个成员项进行赋值及输出。
首先,进行学生个人信息及成绩的登记。
其次输入今天的年、月、日,再通过与刚刚输入学生的出生日期的年份比较从而计算出年龄,再通过月份和日期的比较,判断该学生是否达到周岁,决定年龄是否减一。
再次,通过对学生各门科目成绩的逻辑运算(即各门科目成绩均达到及格含及格,才可通过考试),从而判断是否可以通过考试。
然后,通过switch语句进行科目选择,用冒泡法对单科进行选择排序,并再次通过switch语句进行单人选择,输出其个人信息及各科成绩。
最后,对程序继续运行或终止进行逻辑判断,当输入“1”时,重新返回switch开关进行查询,当输入“0”时,结束本程序。
三、主要知识点:
使用文件包含、C语言宏定义、图形界面的使用、系统函数调用函数。
四、程序清单:
#defineNAMESIZE20
#defineADDRSIZE100
#defineN8
structsubject
{
floatYY;
floatSX;
floatHX;
floatZZ;
charpass;
};
structbirthday
{
intyear;
intmonth;
intday;
};
structstudent
{
intage;
charname[NAMESIZE];
charsex[2];
charaddress[ADDRSIZE];
structbirthdayDATE;
structsubjects;
};
structstudentstd[8];
main()
{
inti;
intj;
inta;
intb;
intd;
intc;
intl;
intnum;
structstudentchange;
intk;
intu,v,w,x;
intletter;
for(i=0;i { printf("%d\n",i+1); printf("name: sex: address: \n"); scanf("%s%s%s",std[i].name,std[i].sex,std[i].address); printf("year--month--day\n"); scanf("%d%d%d",&std[i].DATE.year,&std[i].DATE.month,&std[i].DATE.day); printf("YY: SX: HX: ZZ: \n"); scanf("%f%f%f%f",&std[i].s.YY,&std[i].s.SX,&std[i].s.HX,&std[i].s.ZZ); }; printf("Today: year--month--day\n"); scanf("%d%d%d",&a,&b,&c); for(l=0;l {std[l].age=a-std[l].DATE.year; if(std[l].DATE.month>b) std[l].age--; if((std[l].DATE.month==b)&&(std[l].DATE.day>c)) std[l].age--; printf("name: %s\tage: %d\n",std[l].name,std[l].age);} for(k=0;k<8;k++) {if(std[k].s.YY>=60)u=1; if(std[k].s.SX>=60)v=1; if(std[k].s.HX>=60)w=1; if(std[k].s.ZZ>=60)x=1; if(u&&v&&w&&x==1)std[k].s.pass='Y'; elsestd[k].s.pass='N'; printf("NAME: %s\tPASS: %c\n",std[k].name,std[k].s.pass); } loop: printf("Pleaseinputfirstletter.(Y=1,S=2,H=3,Z=4)\n"); scanf("%d",&letter); switch(letter) { case1: { for(i=0;i for(j=i+1;j if(std[i].s.YY { change=std[i]; std[i]=std[j]; std[j]=change; }; printf("Theresultaftersorting(YY)\n"); for(i=0;i printf("NAME: %s\tAGE: %d\tSEX: %s\tYY: %f\n",std[i].name,std[i].age,std[i].sex,std[i].s.YY); printf("Pleaseinput1to8\n"); scanf("%d",&num); switch(num) { case1: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[0].name,std[0].age,std[0].sex,std[0].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[0].s.YY,&std[0].s.SX,std[0].s.HX,std[0].s.ZZ);break; case2: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[1].name,std[1].age,std[1].sex,std[1].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[1].s.YY,std[1].s.SX,std[1].s.HX,std[1].s.ZZ);break; case3: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[2].name,std[2].age,std[2].sex,std[2].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[2].s.YY,std[2].s.SX,std[2].s.HX,std[2].s.ZZ);break; case4: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[3].name,std[3].age,std[3].sex,std[3].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[3].s.YY,std[3].s.SX,std[3].s.HX,std[3].s.ZZ);break; case5: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[4].name,std[4].age,std[4].sex,std[4].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[4].s.YY,std[4].s.SX,std[4].s.HX,std[4].s.ZZ);break; case6: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[5].name,std[5].age,std[5].sex,std[5].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[5].s.YY,std[5].s.SX,std[5].s.HX,std[5].s.ZZ);break;case7: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[6].name,std[6].age,std[6].sex,std[6].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[6].s.YY,std[6].s.SX,std[6].s.HX,std[6].s.ZZ);break; case8: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[7].name,std[7].age,std[7].sex,std[7].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[7].s.YY,std[7].s.SX,std[7].s.HX,std[7].s.ZZ);break; default: break; }break;} case2: {for(i=0;i for(j=i+1;j if(std[i].s.SX { change=std[i]; std[i]=std[j]; std[j]=change; }; printf("Theresultaftersorting(SX)\n"); for(i=0;i printf("NAME: %s\tAGE: %d\tSEX: %s\tSX: %f\n",std[i].name,std[i].age,std[i].sex,std[i].s.SX); printf("Pleaseinput1to8\n"); scanf("%d",&num); switch(num) { case1: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[0].name,std[0].age,std[0].sex,std[0].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[0].s.YY,std[0].s.SX,std[0].s.HX,std[0].s.ZZ);break; case2: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[1].name,std[1].age,std[1].sex,std[1].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[1].s.YY,std[1].s.SX,std[1].s.HX,std[1].s.ZZ);break; case3: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[2].name,std[2].age,std[2].sex,std[2].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[2].s.YY,std[2].s.SX,std[2].s.HX,std[2].s.ZZ);break; case4: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[3].name,std[3].age,std[3].sex,std[3].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[3].s.YY,std[3].s.SX,std[3].s.HX,std[3].s.ZZ);break; case5: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[4].name,std[4].age,std[4].sex,std[4].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[4].s.YY,std[4].s.SX,std[4].s.HX,std[4].s.ZZ);break; case6: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[5].name,std[5].age,std[5].sex,std[5].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[5].s.YY,std[5].s.SX,std[5].s.HX,std[5].s.ZZ);break;case7: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[6].name,std[6].age,std[6].sex,std[6].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[6].s.YY,std[6].s.SX,std[6].s.HX,std[6].s.ZZ);break; case8: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[7].name,std[7].age,std[7].sex,std[7].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[7].s.YY,std[7].s.SX,std[7].s.HX,std[7].s.ZZ);break; default: break; }break;} case3: {for(i=0;i for(j=i+1;j if(std[i].s.HX { change=std[i]; std[i]=std[j]; std[j]=change; }; printf("Theresultaftersorting(HX)\n"); for(i=0;i printf("NAME: %s\tAGE: %d\tSEX: %s\tHX: %f\n",std[i].name,std[i].age,std[i].sex,std[i].s.HX); printf("Pleaseinput1to8\n"); scanf("%d",&num); switch(num) { case1: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[0].name,std[0].age,std[0].sex,std[0].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[0].s.YY,std[0].s.SX,std[0].s.HX,std[0].s.ZZ);break; case2: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[1].name,std[1].age,std[1].sex,std[1].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[1].s.YY,std[1].s.SX,std[1].s.HX,std[1].s.ZZ);break; case3: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[2].name,std[2].age,std[2].sex,std[2].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[2].s.YY,std[2].s.SX,std[2].s.HX,std[2].s.ZZ);break; case4: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[3].name,std[3].age,std[3].sex,std[3].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[3].s.YY,std[3].s.SX,std[3].s.HX,std[3].s.ZZ);break; case5: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[4].name,std[4].age,std[4].sex,std[4].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[4].s.YY,std[4].s.SX,std[4].s.HX,std[4].s.ZZ);break; case6: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[5].name,std[5].age,std[5].sex,std[5].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[5].s.YY,std[5].s.SX,std[5].s.HX,std[5].s.ZZ);break;case7: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[6].name,std[6].age,std[6].sex,std[6].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[6].s.YY,std[6].s.SX,std[6].s.HX,std[6].s.ZZ);break; case8: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[7].name,std[7].age,std[7].sex,std[7].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[7].s.YY,std[7].s.SX,std[7].s.HX,std[7].s.ZZ);break; default: break; }break;} case4: {for(i=0;i for(j=i+1;j if(std[i].s.ZZ { change=std[i]; std[i]=std[j]; std[j]=change; }; printf("Theresultaftersorting(ZZ)\n"); for(i=0;i printf("NAME: %s\tAGE: %d\tSEX: %s\tZZ: %f\n",std[i].name,std[i].age,std[i].sex,std[i].s.ZZ); printf("Pleaseinput1to8\n"); scanf("%d",&num); switch(num) { case1: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[0].name,std[0].age,std[0].sex,std[0].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[0].s.YY,std[0].s.SX,std[0].s.HX,std[0].s.ZZ);break; case2: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[1].name,std[1].age,std[1].sex,std[1].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[1].s.YY,std[1].s.SX,std[1].s.HX,std[1].s.ZZ);break; case3: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[2].name,std[2].age,std[2].sex,std[2].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[2].s.YY,std[2].s.SX,std[2].s.HX,std[2].s.ZZ);break; case4: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[3].name,std[3].age,std[3].sex,std[3].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[3].s.YY,std[3].s.SX,std[3].s.HX,std[3].s.ZZ);break; case5: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[4].name,std[4].age,std[4].sex,std[4].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[4].s.YY,std[4].s.SX,std[4].s.HX,std[4].s.ZZ);break; case6: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[5].name,std[5].age,std[5].sex,std[5].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[5].s.YY,std[5].s.SX,std[5].s.HX,std[5].s.ZZ);break;case7: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[6].name,std[6].age,std[6].sex,std[6].address); printf("YY=%f\tSX=%f\tHX=%f\tZZ=%f\n",std[6].s.YY,std[6].s.SX,std[6].s.HX,std[6].s.ZZ);break; case8: printf("NAME: %s\tAGE: %d\tSEX: %s\nADDRESS: %s\n",std[7].name,std[7].age,std[7].sex,std[7].address); printf("YY
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 综合 实验设计 报告