- 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-7可以分别进行学生信息的查看、添加、删除,修改,计算平均成绩,保存,退出系统操作。
提示:用一个结构体类型表示学生信息
1 typedef struct node /*定义结构体*/
2 {
3 int num; //学号
4 char name[15];//姓名
5 char sex[9]; //性别
6 int age; //年龄
7 int english; //英语成绩
8 int math; //数学成绩
9 int computer;//计算机成绩
10 int average; //平均成绩
11 struct node *next; //链表指针域
12 }student_info;
运行过程中采用一个结构体链表存储学生信息。退出系统时可以采用文件存储用户输入的信息,再次运行的时候从文件中读取。
完整C语言程序分为三个文件,student.h、student.cpp和main.c文件。具体实现如下所示:
student.h文件中定义学生信息结构体,操作函数声明。
1 #ifndef STUDENT_HEAD
2 #define STUDENT_HEAD
3
4 typedef struct node /*定义结构体*/
5 {
6 int num; //学号
7 char name[15];//姓名
8 char sex[9]; //性别
9 int age; //年龄
10 int english; //英语成绩
11 int math; //数学成绩
12 int computer;//计算机成绩
13 int average; //平均成绩
14 struct node *next; //链表指针域
15 }student_info;
16
17 //学生信息链表
18 extern student_info* student_list; //全局变量声明
19
20
21 //初始化函数声明
22 //初始化学生信息链表
23 void init_student_info_list();
24 //判断学生信息链表是否为空
25 int student_list_empty();
26
27 //操作函数声明
28 //向学校信息表中添加学生信息记录
29 int add_student_info();
30 //根据学号删除学生信息
31 int delete_student_info(int num);
32 //根据学号修改学生信息
33 int modify_student_info(int num);
34 //根据学号查找学生信息
35 student_info* search_student_info(int num);
36 //输出每个学生的平均成绩
37 void display_average();
38 //显示所有学生信息
39 void display_student_info();
40 //将学生信息保存到文件
41 int save_file();
42 //从文件中读取学生信息
43 int read_file();
44 #endif
student.c文件中是对student.h文件中声明的函数进行定义,给出具体的实现代码。
1 #include student.h
2 #include stdio.h
3 #include string.h
4 #include malloc.h
5
6 //初始化学生信息链表
7 void init_student_info_list()
8 {
9 //学生信息链表头结点
10 student_list = (student_info*)malloc(sizeof(student_info));
11 student_list-next = NULL;
12 }
13 //判断学生信息链表是否为空
14 int student_list_empty()
15 {
16 return student_list-next == NULL;
17 }
18 //操作函数实现
19 //向学校信息表中添加学生信息记录
20 int add_student_info()
21 {
22 student_info *pstu = (student_info*)mal
您可能关注的文档
最近下载
- 电子竞技俱乐部投资经营协议.doc VIP
- 南京照相馆观后感(通用15篇).docx VIP
- 人教版八年级上册生物期末复习计划.docx VIP
- 民事执行庭案件代理委托协议.docx VIP
- 数字信号处理-理论、算法与实现(第三版)胡广书习题解答.docx
- 电大大作业:试述中国共产党百年奋斗的历史意义是什么?.doc VIP
- 电大大作业:试述中国共产党百年奋斗的历史意义是什么?.pdf VIP
- 试述中国共产党一百年奋斗的历史意义是什么?(二).pdf VIP
- 电大大作业:试述中国共产党一百年奋斗的历史意义是什么.pdf VIP
- 2024年山西万家寨水务控股集团所属企业招聘笔试真题.docx VIP
原创力文档


文档评论(0)