c答辩全局变量_第1页
c答辩全局变量_第2页
c答辩全局变量_第3页
c答辩全局变量_第4页
c答辩全局变量_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

1、.第十二组C+答辩答辩题目:P231第6题;答辩人员:江碧 李兴明 房明星 王冰制作时间:2010-5-22-10:04.题目:学生成绩管理系统写出学生成绩管理系统的管理框架,界面如下,当我们选择一个功能号的时候可以执行相应的功能。其中数据录入模块功能是一次录入一个学生分数和姓名;数据显示功能是显示当前所有的学生分数和姓名;数据删除模块功能是输入一个序号后,删除这个序号所指定的分数和姓名;数据排序模块功能是将当前所有的学生分数按从小到大进行排序,分数排序的时候,姓名做相同的排序。欢迎进入学生管理系统 1数据输入 2数据显示 3数据删除 4数据排序 5退出系统 请选择功能号(1,2,3,4,5)

2、:.概要分析: 本次的编程题要求我们做一个简易的学生管理系统模块功能与前几次的大致相同不过这次的模块中加入了姓名的录入,我们这组答辩制作了使用全局变量的程序与使用局部变量的程序。 使用全局变量来记录数据很方便这里使用了NUM来作为全局变量,姓名的录入我们使用*p来代表,在姓名录入时要先对*p申请一定的空间,在编写模块时申请空间既可在主模块申请也可在自定义模块来申请,申请后在相应的模块输入输出部分加入姓名的输入输出就行(录入模块显示模块只要直接加入*p就行,而在删除与排序模块则要根据数据的变化进行相应调整)。.void main()while(1) switch(creatTestMenu()

3、case 1: inputStudent(score,N,p); break; case 2: displayStudent(score,N,p); break; case 3: delStudent(score,N,p); break; case 4: sortStudent(score,N,p); break; case 5:exit(0); break; default: cout“ ; break; int NUM=0void inputStudent(float *pArray,int n,char *p)void displayStudent(float *pArray,int n

4、,char *p)void delStudent(float *pArray,int n,char *p)void sortStudent(float *pArray,int n,char *p) #ifndef Student_h#define Student_hextern int NUM;void inputStudent(float *pArray,int n,char *p);void displayStudent(float *pArray,int n,char *p);void delStudent(float *pArray,int n,char *p);void sortSt

5、udent(float *pArray,int n,char *p);#endif输入字符有错.模块设计: 主模块MainA模块功能 这是主模块要求制作一个系统,要求录入学生的分数和姓名,并且在选择相应的功能号的时候执行相应程序。B输入输出C解决思路: 制作一个简易的菜单,把每个功能附上功能号,并分别做模块inputStudent.displayStudent.delStudent和sortStudent模块来实现各自的功能。D算法步骤 第一步:输入数据选择各功能(一般都是先选择功能1录入数据); 第二步:输入姓名与分数; 第三步:再选择相应功能号进行数据分析。main.自定义模块:Stude

6、nt.cpp inputStudent模块:A模块功能 录入数据,即:学生姓名和分数。B输入输出C解决思路 输入选择“y”,利用cin输入分数和姓名。D算法步骤 第一步:输入选择“y”和“n”; 第二步:选择“y”后输入姓名和分数。inputStudentscoreNp.displayStudent模块:A模块功能 显示输入后的所有学生的分数和姓名。B输入输出C解决思路 输入数据后用cout显示分数和姓名 。D算法步骤 对录入模块中录入的数据进行输出显示。scoredisplayStudentNp.delStudent模块:A模块功能 删除数据的某一项。B输入输出C解决思路 删除第i个数据把原

7、来第i个数据后的数据都提前。D算法步骤 第一步:删除第i个数据; 第二步:把原来第i个数据后的数据都提前; 第三步:把相应的姓名也提前。delStudentscoreNp.sortStudent模块:A模块功能 对数据进行排序。B输入输出C解决思路 依次比较各人的分数大小进行排序。D算法步骤 第一步:根据录入的数据比较分数的大小; 第二步:根据第一步数据分数的大小比较情况对 姓名进行调整; 第三步:完成姓名与数据的输出。sortStudentscoreNp.StudentManagerMain#include#include#includeMenu.h#includeStudent.h#def

8、ine N 40void main()float scoreN;char *pN;for(int i=0;iN;i+) pi=new char20; while(1)switch(creatTestMenu()case 1:inputStudent(score,N,p); break;case 2:displayStudent(score,N,p); break;case 3:delStudent(score,N,p); break;case 4:sortStudent(score,N,p); break;case 5:exit(0); break;default:cout输入字符有错;Men

9、u.cpp#includeint creatTestMenu() int choice; printf(“ttt 欢迎进入本系统 n); printf(tt1录入数据tt2显示 数据n); printf(tt3删除数据tt4数据 排序n); printf(tt5退出系统n); printf(t请选择功能号 (1,2,3,4,5):); scanf(%d,&choice); return choice;Menu.hint creatTestMenu();.Student.cppint NUM=0;#include#include#includeStudent.hvoid inputStu

10、dent(float *pArray,int n,char *p)if(NUM=n)cout对不起,人数已满;elsecoutchoice;while(choice=y) coutpNUMpArrayNUM; NUM+; coutchoice;void displayStudent(float *pArray,int n,char *p) coutt学生分数结果如下endl; coutt*endl; coutt序号t姓名t分数endl; for(int i=0;i=NUM-1;i+) coutti+1tpArrayitpi endl; coutt*endl; coutt学生分数显示结束endl

11、; coutendlendl;void delStudent(float *pArray,int n,char *p) int no; coutno; for(int i=no;i=NUM-1;i+) pArrayi-1=pArrayi;pi-1=pi; NUM-;.void sortStudent(float *pArray,int n,char *p)for(int i=0;i=NUM-2;i+) for(int j=i+1;jpArrayj) float temp; temp=pArrayi; pArrayi=pArrayj; pArrayj=temp; char *pTemp; pTemp=pi; pi=pj; pj=pTemp; Student.cpp#ifndef Student_h#define Student_h#includeextern int NUM;void inputStudent(float *pArray,int

温馨提示

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

评论

0/150

提交评论