西安邮电大学(计算机学院)C语言课程设计报告题目:学籍管理系统专业名称:信息与计算科学班级:信息学生姓名:学号(8位):指导教师:设计起止时间:2014年6月16日—、编译链接和运行的过程,至少能够用一种编译器较熟练地编辑、编译及调试程序。,如何定义一个整型、字符型和实型的变量,以及对它们赋值的方法。。涉及循环调用的,了解并掌握三种控制语句while、do-while和for语句。、声明函数及调用函数的方法和过程。,认识文件打开、关闭、读、写等文件基本操作函数。、链表的使用。,掌握指针的定义和使用指针变量的方法以及链表的正确用法。灵活使用链表来储存学生信息。8.、通过字符数组存储字符串,进一步使用字符串 课程设计内容学生信息管理主要功能:(1)能按学生的学号、姓名等完成对学生信息的录入、修改、统计、查询等功能(2)能实现根据学号进行排序(3)能按照学号及姓名对学生进行查询开发工具——VisualC++运行平台——WindowsXP 三、需求分析对所开发系统功能、性能的描述,想要实现的目标。系统功能:(1)能按学号、姓名、年龄、性别、籍贯等录入学生的基本信息(2)能进行删除,插入操作。(3)能根据需要对学生的各项信息进行修改(4)能根据学生的学号对所有的学生进行简单排序阅览(5)能按照学号和姓名对学生进行查询(6)可以保存到文件(附加功能)(7)可以从文件读入已有的文件(附加功能)(8)以菜单方式工作性能描述:各种功能都可以满足;程序相对较小,因而运行时反应比较迅速,不存在响应不及时地问题。四、概要设计 (功能模块图)学籍管理结构图主模块显示菜单修改信息按学号排序查询信息保存到文件从文件读入按姓名查询按学号查询按姓名修改按学号修改;五、详细设计及运行结果流程图,函数之间相互调用的图示,程序设计及编码,运行结果。开始选择操作显示信息i修改添加信息保存信息删除输出界面按学号查询按学号按姓名查选择7选择6选择5选择4选择3选择2选择1选择8按学号排序籍贯性别年龄姓名学号按学号按姓名选择0退出定义变量输入正确输入密码 错误进入界面重新输入sum=read_message();Do循环(choice!=0)输入数字(0~5)进行选择Case1print(head);break;Case2insert(head);break;Case3delet(head);;break;Case4fc(head);;break;Case5save_inf(head);;break;Case6findnu(head);;break;Case7findna(head);;break;Case8turn(head);;break;Case9case9:count(head);break;Case0exit;Clrscr();排序模块定义三个指针*p*p1*p2,找到俩个头指针p=p1=head->next;p1=p1->next;p->next=NULL; p1!=NULLp2=p1->next;p=head; p->next!=NULL&&p->next->num<p1->num p=p->next;p1->next=p->next;p->next=p1;p1=p2; 排序成功返回主菜单修改模块 定义指针 按学号查 choice 按姓名查 调用查找函数选择是否修改学生信息 是否 输入新信息结束 修改成功 选择是否继续修改六,重点设计及编码structstu*creat_inf(){structstu*head,*r,*s;inti=1;charchoice;head=(structstu*)malloc(N);head->next=NULL;r=head;do{s=(structstu*)malloc(N);printf("\n\n第%d个人的信息:\n",i++);printf("\n姓名:\n");flushall();scanf("%s",s->name);printf("\n学号:\n");flushall();scanf("%ld",&s->num);printf("\n年龄:\n");flushall();scanf("%d",&s->age);printf("\n性别:\n");flushall();scanf("%s",s->sex);printf("\n籍贯:\n");flushall();scanf("%s",s->addr);r->next=s;r=s;printf("
学籍管理系统 来自淘豆网m.daumloan.com转载请标明出处.