使用结构数组实现学生成绩管理.doc_第1页
使用结构数组实现学生成绩管理.doc_第2页
使用结构数组实现学生成绩管理.doc_第3页
使用结构数组实现学生成绩管理.doc_第4页
使用结构数组实现学生成绩管理.doc_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

编号:17一、题目:使用结构数组实现学生成绩管理(17题)二、设计思路1、总体设计1)程序的功能:可对一个班学生的成绩进行管理,可按课程输入学生成绩,并可按学生或课程进行查询。2)系统总体结构:tou.h(头文件,包括结构体的定义以及调用函数的声明)main.cpp(主函数,对其他函数进行调用)putin.cpp(成绩的输入)chaxun.cpp(成绩的查询)chaxun_s(按学生查询)chaxun_c(按课程查询)2、各功能模块的设计: tou.h : 在其中声明函数,并定义了两个结构体,用于存放课程信息和学生信息。main.cpp: 通过循环控制变量,以及选择结构的使用,实现不同函数功能的调用。putin.cpp: 利用循环,对学生成绩进行输入。chaxue.cpp:运用条件语句对程序进行选择。chaxun_s.cpp:运用循环,输出按学生进行查询的结果。chaxun_c.cpp:运用循环,输出按课程进行查询的结果。3、设计中的主要困难及解决方案1)困难1:对多文件的使用,即主函数和各个函数分别存放在不同的.cpp文件中。解决方案:在头文件中进行声明,不能进行赋值运算,直接在主函数中进行赋值2)困难2:程序冗杂,需实现的功能较多,不容易理清。解决方案:利用多个函数,在主函数里进行调用,可以将思路简化,条理清晰。4、你所设计的程序最终完成的功能1)可按学生信息对学生成绩进行输入,按课程输入后可按学生或课程进行查询。2)准备的测试数据如下编号姓名课程计算机基础计算机软件技术基础单片机大学英语英语阅读高等数学数值分析51001Alice9897969594686851002John8976986688567651003Tom8767876687687651004Jim89658797678997运行结果如下1.欢迎画面:2.学生成绩输入:3.选择程序后为每位学生输入成绩:4.进入查询页面:5.选择类型后输出结果:6.结束:三、程序清单1.tou.h文件清单:struct student /对学生进行的结构体定义int num; /学生编号char name20; /学生姓名 ;const student stu4=51001,Alice,51002,John,51003,Tom,51004,Jim; /学生信息初始化struct kecheng /对成绩进行的结构体定义int bianhao; /课程编号char k_name40; /课程名称int flag; /是否统计标志;void putin(kecheng ,double chengji47);void chaxun_s(kecheng ,double chengji47);void chaxun_c(kecheng ,double chengji47);void chaxun(kecheng ,double chengji47);2.main.cpp文件清单:#include#includetou.hvoid main()int z; /选择程序编号 kecheng ke7=1,计算机基础,-1,2,计算机软件技术基础,-1,3,单片机,-1,4,大学英语,-1,5,英语阅读,-1,6,高等数学,-1,7,数值分析,-1; /对课程的初始化 double chengji47;for(;)cout欢迎使用学生成绩管理程序!endl;cout 1.输入学生成绩endl;cout 2.查询学生成绩endl;cout 0.退出endl;coutz;if(z=1)putin(ke,chengji);else if(z=2)chaxun(ke,chengji);else if(z=0)cout谢谢使用本系统endl;break;else couterror!endl;3.putin.cpp文件清单:#include#includetou.hvoid putin(kecheng ke,double chengji47)int xuanze;for(int i=0;i7;i+)if(kei.flag=-1)coutkei.bianhaotkei.k_nameendl;coutxuanze;cout请输入kexuanze-1.k_name的成绩endl;for(i=0;i4;i+)chengjiixuanze-1;kexuanze-1.flag=1; /用循环判断该学生成绩是否输入4.chaxue.cpp文件清单:#include#includetou.hvoid chaxun(kecheng ke,double chengji47)int cz;for(;)cout可进行的查询操作为endl; cout 1.按学生查询成绩endl; cout 2.按课程查询成绩endl; cout 0.退出endl; coutcz;if(cz=1)chaxun_s(ke,chengji);else if(cz=2)chaxun_c(ke,chengji);else if(cz=0)break;else couterror!endl;5. chaxun_s.cpp文件清单:#include#includetou.hvoid chaxun_s(kecheng ke,double chengji47)int xuanze;cout学生信息如下:endl;for(int i=0;i4;i+)couti+1endl;coutxuanze;cout学生的成绩如下:endl;for(i=0;i7;i+)if(kei.flag=1)coutkei.k_nametchengjixuanze-1iendl;6. chaxun_c.cpp文件清单:#include#includetou.hvoid chaxun_c(kecheng ke,double chengji47)int xuanze;cout可供查询的课程为:endl;for(int i=0;i7;i+)if(kei.flag=1)couti+1tkei.k_nameendl;coutxuanze;cout查询的kexuanze-1.k_name的成绩如下:endl; for(i=0;i4;i+)tchengjiixuanze-1endl;四、对该设计题目有何更完善的方案该程序功能比较完全,只不过无法保存数据,关闭程序后输入的数据就没有了,应该有待改进。五、收获及心得体会1、本程序完成了题目基本要求和创新要求,解决了列

温馨提示

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

评论

0/150

提交评论