- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
福建工程学院计算机与信息
科学系之勘阻及广创作
实验陈述
-第1学期任课老师: 章静
课程名称
结构化程序综合设计 班级
计算机
1001
座号 3100301114 姓名
张扬文
实验题目
学生成绩管理系统
实验时 间
实验开始日期:12124陈述提交日
期:/3/10
实验目的、要
至求
?该实验的课内学时是 4个课时。
?程序完成后应该完成如下基本功能:
1) 用自定义结构体typedef struct 设计该软件的数据结构;
2) 用数组或指针链表将所有学生的数据依照学号顺序链接起来 ;
3) 程序能够依照学号顺序输入学生的三门成绩,并计算平均成绩和总成绩。
4) 程序能够显示已经输入的指定学号的学生成绩以及平均成绩和总成绩。
5) 程序能够按要求显示指定分数段的学生成绩以及平均成绩和总成绩。
6) 能够统计班级总人数、班级平均成绩。
7) 能够增加和删除指定学生的成绩。
8) 依照指定的要求以及顺序(升序或降序)显示学生成绩以及平均成绩和总成绩。
实验步调与内容
按如下顺序写:
1、 主要设计思想;
学生成绩管理系统包含多种功能,可以输入学生成绩,删除,拔出,排序,查找等 等。。。输入的信息又包含学生姓名,学号,各科成绩。。所以首先要定义一个结构 体:
typedef struct node
{
char id[20];
char n ame[15];
int score[MAXCOURSE];
int sum;
double average; struct node *n ext;
}Stude nt;
根据结构体中的内容飙血程序。
2、 主要数据结构及其解释
在此次程序设计中用了链表来实现对数据的处理,并设计了菜单界面如图,根据 switch
语句来对用户的选择:
? F:计舸如zywg .ece_ n系哩
? F:计舸如zywg .ece
_ n
系哩
1
绩
一序」分
锂牛绩漱 生查杳一生厂 打查尊查插/
- 一- 一- - ---8 12 3 456-78910
3、模块关系图;
4、 所有函数的简要说明;
拔出函数Insert_Before();主要是要重新加入学生的信息,通过头插法。
计算平均分和总分 Count_Score();将输入的数据计算出学生的平均分和总分。
删除学生信息Del_Student();删除某个学生的成绩。
按姓名查找Searchname_Student()通过输入学生的姓名找到学生的成绩。
计算班级总人数people=Count_People();将总的输入学生人数打印出来。
显示某分数段学生信息 Section_Score();首先选择你要某科目的成绩并输入成绩的 范围,按条件输出学生成绩。
按总分,平均分降序排列 Descend_English();将输入的全部学生成绩按总分排序。
5、 所有源代码;
/*
学生成绩管理系统C语言
*/
#in elude stdio.h #in elude stdlib.h #in elude stri ng.h #defi ne MAXID 10 #defi ne MAXNAME 20 #defi ne MAXCOURSE 3 /*学生数据结构*/ typedef struct node { char id[20]; char n ame[15]; int score[MAXCOURSE]; int sum; double average; struct node *n ext;
}Stude nt;
/*头指针*/
Stude nt *head = NULL;
/*课程名称*/
char ClassName[MAXCOURSE][20]={ 数学,英语,计算机}; /*菜单*/ in t Me nu()
{
system(cls); fflush(stdi n);
prin tf( 计算机 1001 张扬文 3100301114 \n);
初始化\n);输入学生信息\n);计算所有学生的总分和平均分 打印全部学生信息
初始化\n);
输入学生信息\n);
计算所有学生的总分和平均分 打印全部学生信息\n);
查找学号或姓名删除学生信息 按姓名查找学生信息\n); 按学号查找学生信息\n); 查找某一科成绩段学生信息 拔出学生信息到链表中\n);
\n);\n);\n);prin tf( 1 printf( 2 printf( 3 printf( 4 printf( 5 printf( 6 printf( 7 printf( 8 printf( 9
\n);
\n);
\n);
printf( 10按总分或平均分降序排列学生成绩 \n);
printf( 0 退出 \n); return 0;
}
/*初始化*/
Stud
文档评论(0)