ImageVerifierCode 换一换
格式:DOCX , 页数:37 ,大小:20.34KB ,
资源ID:4954791      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-4954791.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言学生信息管理系统实验报告.docx)为本站会员(b****3)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

C语言学生信息管理系统实验报告.docx

1、C语言学生信息管理系统实验报告.C语言课程设计学生信息管理系统姓名 洪伟生院系 计算机学院日期 2015年7 月5 日教育资料.第一章 设计要求 第二章 算法分析1. 理论依据2. 主要实现方法2.1 整体流程图2.2 函数功能和函数之间的调用关系第三章 代码(源代码)第四章 分析说明第五章 总结第一章、 设计要求1、利用所学的知识、理论和实际结合,利用资源,采用模块化的结构,使用模仿修改自主设计相结合的方法,锻炼学生综合分析解决实际问题的编程能力;2、通过 C语言各个函数功能来实现对学生信息的管理, 学生信息包括学生姓名, 学号,各科成绩;管理方式包括对学生信息的录入,保存,排序,查找、修改

2、、删除等功能。第二章、 算法分析1、程序理论依据通过 C 语言的程序设计基础的掌握,对学生成绩管理系统进行编写程序。首先,通过链表这一数据结构来对学生的信息进行录入以及操作,在其过程中,通过各个功能语句以及选择结构,循环结构等方式的结合来达到所要实现的程序功能。最后通过对 C 语言中对文件的操作,对已有学生成绩的读取和新建学生成绩的录入保存。教育资料.2、主要实现方法2.1 整体流程图学生信息管理系统进入 退出学学学学学学返生生生生生生回信信信信信信主息息息息息息菜录浏查修增删单入览找改加除2.2 、函数功能和函数之间的调用关系2.2.1、函数功能:void Menu_1();/主菜单void

3、 Menu_2();/二级菜单voidswap(structstudent * phead,structstudent * pback);/链表节点互换void Save(struct student * head);/写入磁盘void Search(struct student * head);/查找学生信息void Read(struct student * head);/显示学生信息void Sort(struct student * head);/链表节点排序structstudent*Create();/学生信息手动录入structstudent*Readpoint();/磁盘文件写

4、入内存struct student * Modify(struct student * head);/链表结构体成员修改struct student * Add(struct student * head);/链表节点插入struct student * Delete(struct student * head);/链表节点删除教育资料.2.2.2 、函数之间的调用关系:通过 switch 语句进行指令选择:case 1:学生信息录入调用函数Create( )、Save( ) 、Menu_1( ) 、 Menu_2( )case 2:学生信息浏览调用函数Readpoint( ) 、Sort(

5、) 、Read( ) 、Save( ) 、 Menu_1( ) 、Menu_2( )case 3:学生信息查找调用函数Search( )、Readpoint( )、 Menu_1( ) 、Menu_2( )case 4:学生信息修改调用函数Modify( )、Readpoint( )、 Save( ) 、 Menu_1( ) 、Menu_2( )case 5:学生信息增加调用函数Add( ) 、 Readpoint( )、Save( ) 、Menu_1( ) 、 Menu_2( )case 6:学生信息删除调用函数Delete( )、Readpoint( )Save( )、Menu_1( )

6、、Menu_2( )case 0:返回主菜单调用函数 Menu_1( )第三章、 代码(源代码)/*学生信息管理系统*/#include#include#includestruct student / 定义结构体int num;char name24;char sex5;int Chinese;int Math;int English;struct student * next;教育资料.;void Menu_1();/主菜单void Menu_2();/二级菜单void swap(struct student * phead,struct student * pback);/链表节点互换vo

7、id Save(struct student * head);/写入磁盘void Search(struct student * head);/查找学生信息void Read(struct student * head);/显示学生信息void Sort(struct student * head);/链表节点排序struct student * Readpoint();/磁盘文件写入内存struct student * Create();/学生信息手动录入struct student * Modify(struct student * head);/链表结构体成员修改struct stude

8、nt * Add(struct student * head);/链表节点插入struct student * Delete(struct student * head);/链表节点删除int main(void)Menu_1();return 0;void Menu_1()int num;printf(tttt学生信息管理系统 ttttn);printf(ttt 1:进入学生信息管理 n);/主菜单printf(ttt 0:退出学生信息管理 n);printf( 请您输入指令 :);scanf(%d,&num);switch(num) case 1:Menu_2(); break;教育资料.

9、default:printf(- 您已退出学生信息管理系统 -n);break;/*-*/void Menu_2()struct student * head;int num;printf(ttt 欢迎进入 n);printf(-n);printf(ttt 1: 学生信息录入 n);printf(ttt 2: 学生信息浏览 n);printf(ttt 3: 学生信息查找 n);printf(ttt 4: 学生信息修改 n);/ 二级菜单printf(ttt 5: 学生信息增加 n);printf(ttt 6: 学生信息删除 n);printf(ttt 0: 返回主菜单 n);printf(-n

10、);printf( 请您输入指令 :);scanf(%d,&num);switch(num)case 1:head = Create();Save(head);printf(n);printf(ttt 1: 返回主菜单 n);/ 手动录入学生数据printf(ttt 2: 返回二级菜单 n);printf(n);printf( 请您输入指令 :);scanf(%d,&num);switch(num)case 1:Menu_1();break;case 2:Menu_2();教育资料.break;default :printf( 输入无效,返回二级菜单 !n);Menu_2();break;br

11、eak;case 2:head = Readpoint();/ 写入链表,返回头指针Sort(head);printf(ttt 以学号升序排列 n); Read(head);/ 链表数据写入文件Save(head);printf(n);printf(ttt 1: 返回主菜单 n);printf(ttt 2: 返回二级菜单 n);printf(n);printf( 请您输入指令 :);scanf(%d,&num);switch(num)case 1:Menu_1();break;case 2:Menu_2();break;default :printf( 输入无效,返回二级菜单 !n);Menu

12、_2();break;break;case 3:head = Readpoint();Search(head);/ 查找学生信息教育资料.printf(n);printf(ttt 1: 返回主菜单 n);printf(ttt 2: 返回二级菜单 n);printf(n);printf( 请您输入指令 :);scanf(%d,&num);switch(num)case 1:Menu_1();break;case 2:Menu_2();break;default :printf( 输入无效,返回二级菜单 !n);Menu_2();break;break;case 4:head = Readpoin

13、t();Modify(head); /修改结构体成员并保存到文件Save(head);printf(n);printf(ttt 1: 返回主菜单 n);printf(ttt 2: 返回二级菜单 n);printf(n);printf( 请您输入指令 :);scanf(%d,&num);switch(num)case 1:Menu_1();break;case 2:Menu_2();break;default :printf( 输入无效,返回二级菜单 !n);Menu_2();break;教育资料.break;case 5:head = Readpoint();Add(head); / 增加学生

14、信息并保存到文件Save(head);printf(n);printf(ttt 1: 返回主菜单 n);printf(ttt 2: 返回二级菜单 n);printf(n);printf( 请您输入指令 :);scanf(%d,&num);switch(num)case 1:Menu_1();break;case 2:Menu_2();break;default :printf( 输入无效,返回二级菜单 !n);Menu_2();break;break;case 6:head = Readpoint();head = Delete(head);/ 删除学生信息并保存到文件Save(head);p

15、rintf(n);printf(ttt 1: 返回主菜单 n);printf(ttt 2: 返回二级菜单 n);printf(n);printf( 请您输入指令 :);scanf(%d,&num);switch(num)case 1:Menu_1();break;教育资料.case 2:Menu_2();break;default :printf( 输入无效,返回二级菜单 !n);Menu_2();break;break;case 0: Menu_1();break;default :printf( 请重新输入 n);Menu_2();break;/*-*/struct student * C

16、reate()/ 学生信息手动录入struct student *head,* p,* q;int n;p = q = (struct student *)malloc(sizeof(struct student);printf( 请输入学生的姓名、学号、性别、语文成绩、高等数学成绩、英语成绩 :n);scanf(%s,q-name);scanf(%d %s %d %d %d,&q-num,&q-sex,&q-Chinese,&q-Math,&q-E nglish);n = 0;head =NULL;while (q-num != 0)n = n+1;if (n = 1)head = q;el

17、se教育资料.p-next = q;p = q;q = (struct student *)malloc(sizeof(struct student);scanf(%s,q-name);scanf(%d %s %d %d %d,&q-num,q-sex,&q-Chinese,&q-Math,&q-En glish);p-next = NULL;printf( 学生信息录入成功 !n);return head;/*-*/struct student * Readpoint()/ 学生信息写入内存,便于操作FILE * fp1;struct student *head,* p,* q; int n

18、;if(fp1 = fopen(E:test.txt,rb) = NULL)printf(open file error!n);exit(0);p = q = (struct student *)malloc(sizeof(struct student);fscanf(fp1,%s %d %s %d %d %d,q-name,&q-num,q-sex,&q-Chinese ,&q-Math,&q-English);n = 0;head =NULL;while( !feof(fp1)n = n+1;if (n = 1)head = q;elsep-next = q;p = q;教育资料.q =

19、(struct student *)malloc(sizeof(struct student);fscanf(fp1,%s %d %s %d %d %d,&q-name,&q-num,&q-sex,&q-Chine se,&q-Math,&q-English);p-next = NULL;fclose(fp1);return head;/*-*/void Swap(struct student * phead, struct student * pback)/ 链表元素数据交换struct student * temp = (struct student *)malloc(sizeof(str

20、uct student);strcpy(temp-name,phead-name); temp-num = phead-num; strcpy(temp-sex,phead-sex); temp-Chinese = phead-Chinese; temp-Math = phead-Math; temp-English = phead-English;strcpy(phead-name,pback-name);phead-num= pback-num;strcpy(phead-sex,pback-sex);phead-Chinese = pback-Chinese;phead-Math = pb

21、ack-Math;phead-English = pback-English;strcpy(pback-name,temp-name);pback-num = temp-num;strcpy(pback-sex,temp-sex);pback-Chinese = temp-Chinese;pback-Math = temp-Math;pback-English = temp-English;free(temp);教育资料./*-*/void Sort(struct student * head) / 学号排序struct student * phead = (struct student *)malloc(sizeof(struct student);struct student * pback = (struct student *)malloc(sizeof(struct student);phead = head;while (phead)int Num = phead-num;pback = phead-next;while(pback)if( Num pback-num)Swap(phead,pback);Num = phead-num;pback = pback-next;phead =

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2