学生成绩管理系统实验报告.doc

上传人:新** 文档编号:513033672 上传时间:2023-07-27 格式:DOC 页数:17 大小:2.55MB
返回 下载 相关 举报
学生成绩管理系统实验报告.doc_第1页
第1页 / 共17页
学生成绩管理系统实验报告.doc_第2页
第2页 / 共17页
学生成绩管理系统实验报告.doc_第3页
第3页 / 共17页
学生成绩管理系统实验报告.doc_第4页
第4页 / 共17页
学生成绩管理系统实验报告.doc_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《学生成绩管理系统实验报告.doc》由会员分享,可在线阅读,更多相关《学生成绩管理系统实验报告.doc(17页珍藏版)》请在金锄头文库上搜索。

1、C语言集中上机实习报告院 系: 光电工程学院班 级: 02111507姓 名: 指导教师: 谢竞博题目: 学生成绩管理系统 2016年 12月8日完成实验报告的正文有七部分,分别是:题目名称:设计思路:包括总体设计和每个模块的算法最初程序代码:调试过程(写明调试过程中出现的所有语法错误和逻辑错误,这是评定成绩的主要依据)最终程序代码:测试结果:(截图)心得体会:下面以一个简单的题目为例:一、题目:学生成绩管理系统二、思路:先定义学生人数和学号和学生姓名和各科成绩变量,再调用函数,最后再输出,系统基本完善。三、最初程序代码:#include #include #include #define N

2、UMOFSTU 10 /* 定义学生人数 */#define NUMOFCOURSE2 /* 定义考试科目 */struct studentint number; /* 每个学生的学号 */charname10; /* 每个学生的姓名 */int scoreNUMOFCOURSE; /* 每个学生M门功课的成绩 */floatsum; /* 每个学生的总成绩 */floataverage; /* 每个学生的平均成绩 */;typedef struct student STU;void PrintScore(STU pt, int n);void InputStudent(STU pt,int

3、n);void Total(STU pt,int n);void Sort(STU pt,int n);int SearchByNumber(STU pt, int n,int number_to_search); int SearchByName(STU pt, int n,char name_to_search); char Menu(void);四、调试过程:出现的提示如下:1.执行 cl.exe 时出错.执行结果:经过对整个程序的排错,发现在过程中,缺少一个结束语。将输出那行改正为:在后面添加 结果正确。2. H:C语言学生成绩管理系统.cpp(135) : error C2143:

4、syntax error : missing ; before 执行 cl.exe 时出错.执行结果:经过排查,发现在if(ptj.sum ptk.sum)k=j; (k!=i) temp = ptk;ptk = pti;自定义变量时,缺少if条件语句,结果导致整个自定义变量发生改变在k=j; (k!=i)前面添加if条件语句结果正确3.调试过程中,在使用按姓名查询时,出现经排查,发现在int SearchByNumber(STU pt, int n,int number_to_search) int i; for (i=0; in; i+)if (pti.number = number_to

5、_search)return i;return i; 返回按姓名查询时,返回值确定错误,误将返回-1写成i导致返回值全部为查询方式将i改为-1之后,调试正常五、最终程序为:#include #include #include #define NUMOFSTU 10 /* 定义学生人数 */#define NUMOFCOURSE2 /* 定义考试科目 */struct studentint number; /* 每个学生的学号 */charname10; /* 每个学生的姓名 */int scoreNUMOFCOURSE; /* 每个学生M门功课的成绩 */floatsum; /* 每个学生的总

6、成绩 */floataverage; /* 每个学生的平均成绩 */;typedef struct student STU;void PrintScore(STU pt, int n);void InputStudent(STU pt,int n);void Total(STU pt,int n);void Sort(STU pt,int n);int SearchByNumber(STU pt, int n,int number_to_search); int SearchByName(STU pt, int n,char name_to_search); char Menu(void);

7、/*函数功能:打印学生的信息,此子程序即可以打印全部学生成绩的信息, 也可以打印个别几个学生的信息函数参数:结构体数组的指针pt,表示要打印的学生的起始地址 整型参数n,表示要打印n个学生成绩函数返回值:无*/void PrintScore(STU pt, int n) int i,j;char string100=0,tempNUMOFCOURSE;strcat(string, Number ); /* 建立表头 */strcat(string, Name );for (i=1; i=NUMOFCOURSE; i+)strcat(string, Score);itoa(i,temp, 10)

8、;strcat(string, temp);strcat(string, );strcat(string,sum);strcat(string, average);printf(%s,string); /* 打印表头 */for (i=0; in; i+) /* 打印n个学生的信息 */ printf(nNo.%3d%8s,pti.number, pti.name); for(j=0;jNUMOFCOURSE;j+)printf(%7d,pti.scorej); printf(%8.2f%8.2fn,pti.sum,pti.average); /* 函数功能:从键盘获得学生的信息子程序 函数参

9、数:结构体数组的指针pt,表示要输入的学生信息头 整型变量n,表示要输入的元素的个数 函数返回值:无 */void InputStudent(STU pt,int n) int i,j; for(i=0; in; i+)printf(n 输入学号:);scanf(%d,&pti.number);printf(n 输入名字:);scanf(%s,pti.name); for(j=0; jNUMOFCOURSE; j+)if (j)printf(n 输入高数分数score2:);elseprintf(n 输入英语分数score1:);scanf(%d,&pti.scorej); /* 函数功能:计

10、算每个学生的M门功课的总成绩和平均成绩子模块函数参数:结构体数组的指针pt,表示要输入的学生信息头 整型变量n,表示要处理的元素的个数函数返回值:无*/void Total(STU pt,int n) int i,j;for (i=0; in; i+) pti.sum = 0; for(j=0;jNUMOFCOURSE;j+) pti.sum = pti.sum + pti.scorej; pti.average = pti.sum/NUMOFCOURSE;/* 函数功能:用选择法按总成绩由高到低排序函数参数:结构体数组的指针pt,表示要输入的学生信息头 整型变量n,表示要处理的元素的个数 函

11、数返回值:无*/void Sort(STU pt,int n) int i,j,k;STU temp;for(i=0; in-1; i+)k = i;for(j=i; j ptk.sum)k=j;if(k!=i) temp = ptk;ptk = pti;pti = temp; /* 函数功能:用顺序查找法按学号查找函数参数:结构体数组首地址pt, 整型变量n,表示数组长度, 整型变量 number_to_search,表示要查找的学号函数返回值:如果找到学号,则返回对应下标,否则返回-1*/int SearchByNumber(STU pt, int n,int number_to_search) int i; for (i=0; in; i+)if (pti.number = number_to_search)return i;return -1;/* 函数功能:用顺序查找法按学号查找函数参数:结构体数组首地址pt, 整型变量n,表示数组长度,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > 总结/计划/报告

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号