C语言课程设计_学生成绩管理系统方案

上传人:xmg****18 文档编号:121279306 上传时间:2020-02-19 格式:DOC 页数:38 大小:119.50KB
返回 下载 相关 举报
C语言课程设计_学生成绩管理系统方案_第1页
第1页 / 共38页
C语言课程设计_学生成绩管理系统方案_第2页
第2页 / 共38页
C语言课程设计_学生成绩管理系统方案_第3页
第3页 / 共38页
C语言课程设计_学生成绩管理系统方案_第4页
第4页 / 共38页
C语言课程设计_学生成绩管理系统方案_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《C语言课程设计_学生成绩管理系统方案》由会员分享,可在线阅读,更多相关《C语言课程设计_学生成绩管理系统方案(38页珍藏版)》请在金锄头文库上搜索。

1、.专业整理.中 国 地 质 大 学本科生课程论文封面课程名称 C语言课程设计 教师姓名 李章林 本科生姓名 本科生学号 本科生专业 所在院系 类别: 日期: 2013年12月31日 课程设计评语对课程论文的评语:平时成绩:课程论文成绩:总 成 绩:评阅人签名:注:1、无评阅人签名成绩无效;2、必须用钢笔或圆珠笔批阅,用铅笔阅卷无效;3、如有平时成绩,必须在上面评分表中标出,并计算入总成绩。目 录课程设计评语2目 录31课程论文题目42程序设计思路43功能模块图54数据结构设计55算法设计66程序代码107程序运行结果188编程中遇到的困难及解决方法229总结心得及良好建议2210致谢23一、课

2、程论文题目:学生成绩管理系统1:题目要求请设计学生成绩管理系统,实现学生信息的录入,显示,查找,添加,保存,删除,插入等功能模块。要求功能选择用菜单实现,数据输入和结果输出要求有文件存放。原始数据文件格式:学号 姓名 英语 C语言 高等数学 平均成绩01 张三 75 85 80 8002 李四 2:需求分析根据题目要求,由于学生信息总是存放在文件中,所以应提供文件的输入,输出等操作;在程序中需要浏览学生的信息,应提供显示,查找,排序等操作;另外还应提供键盘式选择菜单实现功能选择。3:总体设计根据上面的需求分析,可以将这个系统的设计分为:数据输入模块、数据显示模块、数据查找模块、数据插入模块、成

3、绩排序模块和成绩保存模块等。二、程序设计思路这次是初次要自主设计一个程序系统。系统要求实现学生信息的录入、显示、查找、添加以及成绩排序等功能。对于几个功能,可分别设置7个部分。根据需求分析,可以将这个系统分为以下模块:输入模块,录入模块,修改模块,保存模块,查询功能模块,删除功能模块,以及排序模块.1、 用户输入模块在此模块中用户根据自己的需求输入数字17中的任意一个数字,实现相应的功能。2、 信息录入功能模块此模块可以让用户输入每个学生的信息:学号、姓名、英语成绩、C语言成绩、高等数学成绩、平均成绩。用户可以连续输入学生的信息,或者删除或者查询,也可以保存当前已录入的信息。3、 修改学生成绩

4、模块用户可以根据实际情况的变化修改已录入的学生成绩的信息,跟实际同步。4、 文件保存模块用户可以在确定已录入的信息无误之后将学生的信息存为一个数据文件。已保存的信息可以再文件中查看也可以在程序中进行查看。用户输入的学生信息可以随时保存。5、 查询功能模块在此模块里,用户可以根据提示输入所想要查询的学生的学号以查询学生的信息。6、 删除功能模块、在此模块里,用户可以根据自己的需求选择想要删除的学生信息,选择之后程序会再次确认,以防误删。 7、排序功能模块 在此模块中,程序会将用户已录入的信息按平均成绩由低到高进行排序。 三、功能模块图:开始x值 1值 2值 7值 6值 5值 4值 3查询模块修改

5、退出排序模块保存模块删除模块添加模块用户输入并将值保存至xx结束四、数据结构设计struct xueshengchengji /*声明学生成绩数据结构体*/char xuehao10; /*学生学号*/char name10; /*学生姓名*/float cyuyan; /*c语言成绩*/float math; /*高数成绩*/float english; /*英语成绩*/ float average; /*平均成绩*/;struct xueshengchengji chengji100,*p=chengji; /*声明记录学生成绩情况的100个元素的结构体数组*/五、算法设计开始选择需要的功

6、能输入学生信息结束1、添加模块void add() printf (t请输入学生学号:);fflush(stdin); /*清除键盘缓冲区*/gets(chengji+n.xuehao);printf(tttt请输入学生姓名:);gets(chengjin.name);printf(tttt请输入该学生的英语成绩:);scanf(%f,&chengjin.cyuyan);printf(tttt请输入该学生的C语言成绩:);scanf(%f,&chengjin.math);printf(tttt请输入该学生的高等数学成绩:);scanf(%f,&chengjin.english); /*计算总成

7、绩*/chengjin.average=(chengjin.cyuyan+chengjin.math+chengjin.english)/3; /*输出内容*/printf(ntttt该学生成绩为:%f,chengjin.average);开始输入要修改的学生学号输入新的学生信息结束printf(nntttt按任意键返回.);getch();2、修改模块void modify ( )char xuehao10; /*接收学生学号字符数组*/int i; /*循环变量*/if (n=-1) /*人数为0说明成绩记录尚未添加*/printf(nntt当前还没有学生成绩记录,按任意键返回主菜单.);

8、getch( );return;printf(t请输入学生学号:); /*提示信息*/gets(xuehao); /*从键盘读取字符串*/for (i=0;i=n;i+) /*在学生总数范围内循环查找*/if(strcmp(chengjii.xuehao,xuehao)=0) /*比较并找到*/*显示该学生成绩情况*/printf(nttt 该学生成绩情况如下: );printf(nttt=nn); printf(学号 姓名 平均成绩); printf(英语 C语言 高等数学); printf(%-6s%-6s,chengjii.xuehao,chengjii.name); printf(%9

9、.2f%9.2f%9.2f%9.2f,chengjii.cyuyan,chengjii.math,chengjii.english,chengjii.average);/*接受该学生新的成绩情况*/ printf(ntt 请输入该学生新的英语成绩: );scanf (%f,&chengjii.cyuyan); printf(ntt 请输入该学生新的C语言成绩: );scanf (%f,&chengjii.math); printf(ntt 请输入该学生新的高等数学成绩: );scanf (%f,&chengjii.english);3、查询模块开始输入要查询的学生学号输出学生信息结束/*查询学

10、生成绩(依据学号)*/void find()char xuehao10; /*接收学生学号字符数组*/ int i; /*循环变量*/ if(n=-1) /*人数为0说明成绩记录尚未添加*/printf(nntt当前还没有学生成绩,按任意键返回主菜单.);getch();return;printf(t请输入学生学号:); /*提示信息*/gets(xuehao); /*从键盘读取字符串*/for(i=0;i=n;i+) /*在职工总数范围内循环查找*/if(strcmp(chengjii.xuehao,xuehao)=0) /*比较并找到*/printf(n 该学生成绩情况如下:); prin

11、tf(n=nn);printf(学号 姓名);printf(英语 C语言 高等数学 平均成绩);printf(%-6s%-6s%,chengjii.xuehao,chengjii.name);printf(%9.2f%9.2f%9.2f%9.2f,chengjii.cyuyan,chengjii.math,chengjii.english,chengjii.average);printf(n 按任意键返回主菜单.);getch();break;if(i=n+1)printf(ntt您所输入的学生学号有误或不存在!);printf(按任意键返回主菜单.);getch();return;4、删除模块输入要删除学生学号开始判断是否要删除删除学生记录结束语NYvoid del()char xuehao10; int i,j; char d; printf(t请输入待删除学生学号:);gets(xuehao);for(i=0;i=n;i+) if(strcmp(chengjii.

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

当前位置:首页 > 办公文档 > 教学/培训

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