学生信息管理系统-C语言课程设计.doc





《学生信息管理系统-C语言课程设计.doc》由会员分享,可在线阅读,更多相关《学生信息管理系统-C语言课程设计.doc(22页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、成绩:存档资料 课 程 设 计 报 告 书所属课程名称 C语言课程设计 题 目 学生信息管理系统 2012年6月14日目 录第1章 需求分析 第2章 整体设计 第3章 详细设计 第4章 系统测试 第5章 课程设计心得第6章 参考文献 第一章 设计内容及要求设计“学生信息管理系统”使其具有学生信息录入功能,修改、删除、显示和查询功能。 (1)包括创建学生个人信息:学生学号、姓名、年龄、号码、地址。 (2)学生信息添加功能。 (3)学生信息删除功能。 (3)学生信息修改功能。 (4)查询学生信息功能。 (5)显示全部学生信息功能。第二章 总体设计思路1程序设计组成框图主菜单 添加新的学生信息浏览所
2、有学生信息检索学生信息按学号检索按姓名检索修改此同学信息删除此同学信息检索信息库添加新的学生信息删除所有记录保存并退出2程序流程图(见下页)case 1case 3Case 2case 1结束调用add()添加新的学生信息fileopen()Menu()输入选择x调用scan()浏览所有学生信息退出系统调用res()检索学生信息x开始filesave()第三章 详细设计说明1头文件#include #include#include#include#define Nsizeof(struct stud)2数入口说明main();主函数;void menu();主菜单界面;void add();添
3、加新的学生信息;void print(int i);打印学生信息;void scan();查找学生信息;void res();检索学生信息界面;void res_name();按姓名检索;void res_num();按学号检索;void del(int i);删除学生信息;void modify(int i);修改学生信息;void fileopen();打开文件;void filesave();保存文件;3调用关系add()menu() add()fileopen()res()add()menu()scan()menu()main()modify(int i)res_name()res()
4、del(int i)res_num()menu()filesave()第四章 调试与测试1编译工具VC+6.02主菜单第五章 心得体会通过这次C程序课程设计,我感受到了编程是一项非常烦琐周密的活动,它不但需要一个人周密的思考问题的能力,处理问题的能力,还需要有足够的耐心和严谨治学的作风,来不得半点马虎,一点小的错误就可能导致整个程序不能运行。我初步学会了课程设计的基本方法,学会了怎样去借鉴别人的方法和经验,知道如何去查找资料和整合处理这些资料的能力,使我收益最大的是享受到了一种成功的喜悦。因为C语言底子比较差,我选择的是相对容易的学生信息管理系统。先开始,比较快速的把大体程序代码写出来了,然后
5、是进行编译,这个环节是一个非常痛苦和艰难的,常常会因为一小点的错误而在编译失败与再次修改的漫漫循环之路中,但失败的越多,对人的考验就越多,在编译运行成功之后的享受成功的喜悦也就越多,另外在调试程序的过程中不断的思考和运用已经学到的知识,这对于自己是有很大的提高的。 由于所学的知识不多,自己的编程经验不足,仍存在一些问题,如不能实现模糊查找等功能。按现有的知识水平有些东西暂时还无法解决,还有待于在以后的学习中不断提高和改进第六章 参考文献1.谢希仁. 计算机网络(第五版)M. 北京:电子工业出版社,2008年2月2.胡小强 计算机网络M 北京:北京邮电大学出版社2005年1月3. 李丽娟 C语言
6、程序设计教程(第二版)M 人民邮电出版社,2009年3月4.李丽娟 C语言程序设计教程习题答案与实验指导(第二版)M 人民邮电出版社附件 程序源代码#include #include #include # include # define N sizeof(struct stud) /测结构体变量的大小/ typedef struct stud char number20; char name20; char sex20; char call20; char add20; struct stud *next; fun; /为结构体命名/ fun *creatlink(void) /创建链表信息
7、/ fun *p1,*p2,*head; /p1为前驱,p2为后继/ int i=1; char choice; head=p2=(fun *)malloc(N); head-next=NULL; choice=y; for(i=1;choice=y|choice=Y;i+) p1=(fun *)malloc(N); printf(*nn); printf(请输入第%d个学生的信息:n,i); printf(学号:); scanf(%s,p1-number); printf(n姓名:); scanf(%s,p1-name); printf(n性别:); scanf(%s,p1-sex); pr
8、intf(n电话:); scanf(%s,p1-call); printf(n宿舍号:); scanf(%s,p1-add); p2-next=p1; p2=p1; printf(n是否继续?(Y/N):); choice=getche(); printf(n); p2-next=NULL; return(head); void savelink(fun *h) /保存链表信息/ fun *p; FILE *fp; char fliename20; printf(n请输入你要保存的文件名?); scanf(%s,fliename); if(fp=fopen(fliename,wt)=NULL)
9、 printf(写文件出错?按任意键退出!); getche(); exit(1); for(p=h-next;p!=NULL;p=p-next) fprintf(fp,%s %s %s %s %s %sn,p-number,p-name,p-sex,p-call,p-add); /向文件中写入数据/ printf(文件已成功保存?按任意键返回!); getche(); fclose(fp); fun *readlink(void) /读出已保存文件的信息/ fun *head,*p,*q; FILE *fp; char filename20; printf(n请输入要打开的文件名:); sc
10、anf(%s,filename); if(fp=fopen(filename,rt)=NULL) printf(读文件出错?按任意键退出!); getche(); exit(1); head=q=(fun *)malloc(N); head-next=NULL; while(!feof(fp) p=(fun *)malloc(N); /建立新链表,并从文件中读出数据/ fscanf(fp,%s %s %s %s %s %sn,p-number,p-name,p-sex,p-call,p-add); q-next=p; q=p; q-next=NULL; fclose(fp); printf(文
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 信息管理 系统 语言 课程设计

限制150内