《课程设计报告(共12页).doc》由会员分享,可在线阅读,更多相关《课程设计报告(共12页).doc(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上数据结构课程设计报告姓名: 学号: 班级: 成绩: 教师: 2012年8月21日 报 告 题目:学生信息管理系统实现功能:程序运行时显示一个简单的菜单。建立一个包含10名学生的信息登记表,每个学生的信息包括:学号,姓名,性别、年龄和3门课的成绩(mathe,English, program design)。(1) 信息输入、删除、排序:初始状态已包含5名学生信息,在此基础上可对学生信息进行输入、删除、按学号排序等操作。(2) 成绩统计:能对学生的成绩进行统计,计算出总分和平均分,并按总分降序排列显示出来。当输入科目名称时能统计出该科的平均分,能显示出最高分和最低分。(
2、3)查询:要求输入一个学生的学号后可显示出该学生的相关信息。 开 始功能图表: 主 菜 单选择16 否 5按总分排序6按科目查看4删除3查找2显示1增添 设计程序:#include#include#include#include#define N 10int max(int a,int b)return(ab?a:b);int min(int a,int b)return(ab?a:b);struct student long num; char name20;char sex;int age;int math;int English;int programdesign;float aver;
3、float sum; ;struct student stuN=11,qq,g,20,90,90,90,90,270,12,pp,b,20,80,80,80,80,240,13,mm,g,21,90,82,71,81,243,14,xx,b,19,70,70,70,70,210,15,yy,g,19,60,60,60,60,180,;int n;int choose;void fun1();void fun2();void fun3();void fun4();void fun5(); void fun6(); void fun1()system(CLS);int i;for(i=5;iN;i
4、+)printf(n请输入*学号: );scanf(%ld,&stui.num); printf(请输入姓名: );scanf(%s,&stui.name);getchar();printf(请输入*性别: );scanf(%c,&stui.sex);printf(请输入年龄: );scanf(%d,&stui.age);printf(请输入*数学成绩: );scanf(%d,&stui.math);printf(请输入英语成绩: );scanf(%d,&stui.English);printf(请输入*课程设计成绩: );scanf(%d,&stui.programdesign);stui.
5、aver=(float)stui.math+(float)stui.English+(float)stui.programdesign)/3;stui.sum=stui.math+stui.English+stui.programdesign; printf(平均分:%6.2fn,stui.aver); printf(*总 分:%6.2fn,stui.sum);printf(nnttt按任意键返回主菜单!);getch();void fun2()system(CLS);int i;printf(n*);printf(n学号t姓名t性别t年龄t数学t英语t课程设计t平均分t总分n);for(i=
6、0;iN;i+)printf(%ldt%st%ct%dt%dt%dt%dt%13.2ft%.2fn,stui.num,stui.name,stui.sex,stui.age,stui.math,stui.English,stui.programdesign,stui.aver,stui.sum);printf(n*);printf(nnttt按任意键返回主菜单!);getch();void fun3()system(CLS);long num;int i,f=0;printf(n请输入您想查找学生的学号: );scanf(%d,& num);for(i=0;iN;i+)if(stui.num=
7、 num)printf(n*);printf(n学号t姓名t性别t年龄t数学t英语t课程设计t平均分t总分n);printf(%ldt%st%ct%dt%dt%dt%dt%13.2ft%.2fn,stui.num,stui.name,stui.sex,stui.age,stui.math,stui.English,stui.programdesign,stui.aver,stui.sum);f=1;if(f=0)printf(ttt未找到所要查找学生!n);printf(n*);printf(nnttt按任意键返回主菜单!);getch();void fun4()system(CLS);int
8、 k,f=0;long num;printf(n请输入您想删除学生的学号: );scanf(%d,& num);for(k=0;kN;k+)if(stuk.num= num) printf(n*);printf(n学号t姓名t性别t年龄t数学t英语t课程设计t平均分t总分n);printf(%ldt%st%ct%dt%dt%dt%dt%13.2ft%.2fn,stuk.num,stuk.name,stuk.sex,stuk.age,stuk.math,stuk.English,stuk.programdesign,stuk.aver,stuk.sum);printf(n*);stuk.num=
9、stuk+1.num;strcpy(stuk.name,stuk+1.name);stuk.sex=stuk+1.sex;stuk.age=stuk+1.age;stuk.math=stuk+1.math;stuk.English=stuk+1.English;stuk.programdesign=stuk+1.programdesign;stuk.aver=stuk+1.aver;stuk.sum=stuk+1.sum; printf(n已经删除该学生信息!n);f=1; if(f=0)printf(ttt未找到该学生!); printf(nnttt按任意键返回主菜单!);getch();v
10、oid fun5() system(CLS);int i;struct student temp;for(i=0;iN;i+) if(stui.sumstui+1.sum) temp=stui+1; stui+1=stui; stui=temp; printf(n*); printf(n学号t姓名t性别t年龄t数学t英语t课程设计t平均分t总分n);for(i=0;iN;i+) printf(%ldt%st%ct%dt%dt%dt%dt%13.2ft%.2fn,stui.num,stui.name,stui.sex,stui.age,stui.math,stui.English,stui.pr
11、ogramdesign,stui.aver,stui.sum); printf(n*); printf(nnttt按任意键返回主菜单!);getch();void fun6() system(CLS); int i,m=0,e=0,p=0,high,low; float aver; struct student temp; printf(n请选择您想查询的科目: 1(数学); 2(英语); 3(课程设计): ); scanf(%d,&choose); printf(n*); for(i=0;iN;i+) m=m+stui.math; e=e+stui.English; p=p+stui.pro
12、gramdesign; if(choose=1) high=stu0.math; for(i=0;iN;i+) high=max(stui.math,high); low=stu0.math; for(i=0;iN;i+) low=min(stui.math,low); aver=(float)m/N; printf(t数学平均分:%.2ft数学最高分:%dt数学最低分:%d,aver,high,low); if(choose=2) high=stu0.English; for(i=0;iN;i+) high=max(stui.English,high); low=stu0.English;
13、for(i=0;iN;i+) low=min(stui.English,low); aver=(float)e/N; printf(t英语平均分:%.2ft英语最高分:%dt英语最低分:%d,aver,high,low); if(choose=3) high=stu0.programdesign; for(i=0;iN;i+) high=max(stui.programdesign,high); low=stu0.programdesign; for(i=0;iN;i+) low=min(stui.programdesign,low); aver=(float)p/N; printf( t课程
14、设计平均分:%.2ft课程设计最高分:%dt课程设计最低分:%d,aver,high,low); printf(n*);printf(nnttt按任意键返回主菜单!);getch();int main() system(color 1E); while(1) system(CLS); int choose,flag=0; printf(tttttn); printf(* 学生成绩管理系统 *n); printf(n); printf(* _ * 欢迎使用 * _ *n); printf(nttt 1*:增添n); printf(nttt 2*:显示n); printf(nttt 3*:查找n)
15、; printf(nttt 4*:删除n); printf(nttt 5*:按总分排序n); printf(nttt 6*:按科目查看n); printf(nttt 请输入您选择的操作: ); scanf(%d,&choose); while(choose!=1&choose!=2&choose!=3&choose!=4&choose!=5&choose!=6) printf(ttt_ 输入错误,请重新输入! _ n); scanf(%d,&choose); switch(choose) case 1:fun1();break; case 2:fun2();break; case 3:fun3();break; case 4:fun4();break; case 5:fun5();break; case 6:fun6();break; if(flag) break; 运行结果:专心-专注-专业