- 1、本文档共23页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
信息学院
课程设计Ⅰ报告
课程名称___C语言程序设计_
题目名称 学生成绩管理系统
学生学院_ _
专业班级
学 号
学生姓名
指导教师______ ____
2012年12月23日
1设计目的与要求 3
1.1题目及设计要求 3
1.2 本程序设计的知识点 3
2、功能设计 3
2.1、 总体设计 3
2.3详细设计 6
3、程序实现 8
3.1 程序实现时应考虑的问题 8
3.2 成绩排序、信息删除、信息保存、文件打开模块核心代码 8
3.3程序源代码 11
4、测试分析 19
4.1 测试结果及分析 19
5、总结 22
6、参考文献: 23
1设计目的与要求
1.1题目及设计要求
题目:将学生基本信息、学生成绩基本信息要存入文件当中,并且具有文件的输入输出操作;查询功能要求提供查找和显示操作;删除功能要求实现删除操作;排序功能要求实现排序操作;另外还应该提供键盘式选择菜单以实现功能选择。
设计要求:程序具有信息录入、查看、查找、成绩排序、删除信息、保存信息、打开文件、退出系统等功能。
我负责的是成绩排序、信息的删除、信息的保存、文件的打开这四个模块。
1.2 本程序设计的知识点
1程序涉及数组,字符串的定义;
2 函数调用;
3结构体,指针;
4文件录入
2、功能设计
2.1、 总体设计
(1)在此程序中,包括几个头文件:
#includestdio.h :将stdio.h内容放在这儿定义字符串变量定义了五种类型、()、();
(2)系统中所包含的函数:
void look(); /*声明查看函数*/
void save(); /*声明保存函数*/
void search_name(); /*声明按姓名查看函数*/
void search_number(); /*声明按学号查看函数*/
void order(); /*声明排序函数*/
void del(); /*声明删除函数*/
int openl(); /*声明打开函数*/
void welcome(); /*声明我的个人信息函数*/
void type(); /*声明输入函数*/
void see(); /*声明打开并查看文件函数*/
Main();/*主函数*/
(3)系统中定义的结构体
struct student /*定义学生信息的结构体类型*/
char num[15]; /*学号*/
char name[20]; /*姓名*/
char sex[4]; /*性别*/
char dno[20];/*宿舍号*/
int english; /*英语成绩*/
int math; /*数学成绩*/
int chinese; /*语文成绩*/
float aver; /*平均成绩*/
float sum; /*总成绩*/
(4)系统中定义的全局变量
int n
(5)系统功能模块
2.3详细设计
(1)成绩排序模块
排序功能:对数据进行排序,通过order函数对数据按平均分进行排序,排序结束后调用save函数保存。
(2) 信息删除模块
删除功能:删除信息,通过del函数实现,删除后调用save函数对数据保存。
(3)信息保存模块
保存功能:对数据进行保存,用save函数向文件中写入数据实现该功能。
(4)文件打开模块
3、程序实现
3.1 程序实现时应考虑的问题
程序代码问题输入时大小写问题、界面是否整洁大方。在程序实现时,定义是否合理,函数调用语句控制语句void order() /*定义排序函数*/
{
system(CLS);
int i,j;
char a;
struct student temp; /*声明结构体变量*/
printf(学号\t姓名\t性别\t宿舍\t英语\t数学\t语文\t平均成绩\t总成绩\n);
for(i=0;in;i++) /*对数据进行排序*/
{
for(j=i+1;jn;j++)
if(stu[i].sumstu[j].sum)
{
temp=stu[i];
stu[i]= stu[j];
stu[j]=temp;
}
printf(%s\t%s\t%s\t%s\t%d\t%d\t%d\t%.1f\t\t%.1f\n,stu[i].num,stu[i].name,
stu[i].sex,stu[i].dno,stu[i].english,stu[i].math,s
文档评论(0)