学籍管理系统

上传人:公**** 文档编号:510238999 上传时间:2023-11-13 格式:DOCX 页数:23 大小:42.81KB
返回 下载 相关 举报
学籍管理系统_第1页
第1页 / 共23页
学籍管理系统_第2页
第2页 / 共23页
学籍管理系统_第3页
第3页 / 共23页
学籍管理系统_第4页
第4页 / 共23页
学籍管理系统_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《学籍管理系统》由会员分享,可在线阅读,更多相关《学籍管理系统(23页珍藏版)》请在金锄头文库上搜索。

1、学籍管理系统 实验题目:学籍管理系统 一、实验目的 综合应用所学的C语言程序设计知识,自行设计并实现一个较为完整的小型管理信息系统。通过系统分析、系统设计、编程实现,写实验报告等环节,初步掌握软件系统的设计方法和步骤,提高灵活运用程序语言进行软件开发的技能,提高程序设计水平和分析问题、解决问题的能力。 二、实验内容 1):熟悉C语言的开发环境,按照给定的上机步骤练习完成; 2):熟悉C程序的编辑,编译,链接和运行的过程。 3):编译一个应用系统程序,形成一个软件系统。 三、详细设计及运行结果 1、算法设计 学籍管理系统程序采用了结构化程序设计的思想,将程序分解成许多模块,再由主函数调用这些模块

2、,实现不同的功能。 1、学生信息结构体:储存学生信息。 2、主菜单模块:通过利用输出函数显示输出主菜单信息。 3、提示错误信息模块:通过利用输出函数输出提示错误信息。 4、提示没有找到模块:通过利用输出函数输出提示没有找到该学生。 5、输出中文、英文模块:通过利用输出函数输出中文提示及学生数据。 6、定位模块:定位连表中符要求合的接点,并返回该指针。 7、增加学生信息模块:通过指针的不断后移逐个接受学生信息并将学生信息付给相应变量。 8、查询学生信息模块:根据用户选择按学号或按姓名查询,分别按学号或姓名逐个比较输入的数据与结构体中的数据,有匹配的则输出,没有则提示没有找到。 9、删除信息模块:

3、根据用户选择按学号或按姓名删除,分别比对输入数据和结构体中的数据,有匹配的则删除,没有则提示无信息可删。 10、修改信息模块:通过用户输入的学号找到相应学生,然后逐项修改学生信息,否则提示无此学生。 11、显示信息模块:将学生信息输出。 12、保存信息模块:将接受的结构体信息利用指针存入文件中。 13、排序模块:按照学生的最高分进行排序,输出。 14、统计学生信息模块:逐项比较相邻两项的成绩信息,得到每项最大值,并输出统计结果。 15、主函数:通过调用各模块来实现学生信息的管理。 2、模块图设计 总分主函数 增删查修加除询改学学学学生生生生信信信信息 息 息 息 按按按按学姓学姓号名号名删删查

4、查除 除 询 询 3、流程图设计 显保学统示存生计 学学总最 生生分高信信排分 息 息 序 总分 按按按按按数英C总平学语语分均成成言排分绩绩成序 排排排绩序 序 序 排序 1、主函数 能 文件是否能打开 不能 提示文件已打开,正在导入 提示文件不能打开 将文件内容放入节点中 关闭文件 输出菜单,请用户选择 Choice 01 增加学生信息 2 删除学生信息 3 查询学生信息 4 修改学生信息 5 保存学生信息 6 统计最高分 7 按总分排名 按最高分打印 8 返回 2、增加学生信息模块: N 是否存在 Y 输入信息 提示学生已存在 给相应变量 返回 3删除学生信息 否 文件是否为空 是 输出

5、提示:1、按学号2、按姓名 1 choice 提示输入学号 提示输入姓名 2 没有资料 接收输入学号 接收输入姓名 是否找到 否是 删除该生信息 提示没有找到 返回 4.查询学生信息 否 文件是否为空 是 输出提示:1、按学号2、按姓名 1 choice 提示输入学号 提示输入姓名 2 提示无资料可查 接收输入学号 接收输入姓名 是否找到 否提示没有找到 是 输出查询结果 返回 4、修改学生信息 是 文件中是否有资料 否 提示输入要修改的学号 提示无资料可修改 接收输入的学号 是否找到 否 提示没有找到 是 写入新数据并给相应变量 提示资料已修改完毕 返回 6、显示学生信息 是 文件是否能打开

6、 否 依次显示学生信息 提示无资料可查 返回 7、保存学生信息 是 文件是否能打开 否 将输入内容存入文件 提示文件打开错误 提示保存完成 返回 8.按总分排序 是 资料知否存在 否 依次比较总分得出最大值 提示无资料查 输出比较结果 返回 9、统计学生最高分 是 资料知否存在 否 依次比较总分得出最大值 提示无资料可统计 依次比较平均分得出最大值 依次比较数学成绩得出最大值 依次比较英语成绩得出最大值 依次比较C语言成绩得出最大值 输出比较结果 返回 四、调试情况,设计技巧及体会 1、本系统在VC6下编译调试通过,可顺利运行,各项功能达到设计要求 本系统采用分模块调试的方法进行编译,即完成一

7、个函数功能模块就编译一个功能模块,最后再进行整体编译并生成可执行文件honest.exe。 在调试过程中主要碰到以下问题: 输入函数中的取地址符即“&”不能正确使用,导致程序在输入数据时发生错误。 在比较两个字符串时不能正确使用“strcmp”函数,导致比较结果不能输出。 在应用指针时没有注意头结点中的数据域中是不存放数据,导致指针指向错误。 2、在这次课程设计中我充分体会到C语言作为一门编程的基本语言它的精妙。通过这次课程设计使我了解到我有很多的不足,在程序调试的时候常常会因为几个错误而弄得心烦,这说明我对知识的掌握还不够牢,在程序设计的过程中也暴露出了我的诸多弊端,借这次课程设计的机会我会

8、认真的加以改正,多多看书 多去图书馆学习,同时应该增强自己的实践能力,为以后的学习打下坚实的基础。 五、源程序清单(略,详见电子版实验报告) #include stdio.h #include conio.h #include stdlib.h /*包含后面使用的exit等函数*/ #include string.h/*包含号面使用的strcmp等函数*/ int havesave=0; /*全集变量*/ struct student char num10;/* 学号 */ char name18; char sex3; int clanguage; int math; int english

9、; int totle; int average; ; typedef struct node /*使用typedef语句,简化程序后续声明定义的键盘输入*/ struct student data; struct node *next; Node,*Link; void menu printf(n); printf( n); printf( n); printf( n); printf( n); printf( t1添加学生资料ttttt2删除学生资料 n); printf( n); printf( t3查询学生资料ttttt4修改学生资料 n); printf( n); printf( t

10、5保存学生资料ttttt6统计最高分 n); printf( n); printf( t7按总分排名ttttt8打印学生成绩 n); printf( n); printf( t9帮助信息ttttt0退出系统 n); printf( n); printf( n); printf( n); printf( n); printf(n); printf(n); void print_san printf(-n); void Wrong printf(n=提示:输入错误!n); void Nofind printf(n=提示:没有找到该学生!n); void printchinese /* 本函数用于输

11、出中文 */ printf(t 学号t 姓名 性别 英语成绩 数学成绩 C语言成绩 总分 平均分n); void printenglish(Node *p)/* 本函数用于输出英文 */ printf(t%-9s%st%st%dt%dt%dt %dt %dn,p-data.num,p-data.name,p-data.sex,p-data.english,p-data.math,p-data.clanguage,p-data.totle,p-data.average); void printhelp printf(该程序为用C语言编写的学生管理程序,第一次进入该程序需要创建学生数据n); pr

12、intf(以后进入可根据菜单栏显示实现各项功能,系统默认保存文件位置为D:/学生管理n); printf(按任意键返回); printf(n); getch; Node* Locate(Link l,char findmess,char nameornum) /* 该函数用于定位链表中符合要求的结点,并返回该指针 */ Node *r; if(strcmp(nameornum,num)=0) /* 按学号查询 */ r=l-next; while(r!=NULL) if(strcmp(r-data.num,findmess)=0) return r; r=r-next; else if(strcmp(nameornum,name)=0) /* 按姓名查询 */ r=l-next; while(r!=NULL) if(strcmp(r-data.name,findmess)=0) return r; r=r-next; return 0;

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

当前位置:首页 > 建筑/环境 > 施工组织

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