c语言课程设计 班级档案管理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2011-2012学年第二学期《高级语言程序设计》
课程设计报告
题目:班级档案管理
专业:网络工程
班级:2班
姓名:
指导教师:
成绩:
计算机与信息工程系
2013年6月28日
设计题目
1 设计内容及要求
1、1构建各种算法的基本数据模型,并进行分析;
1、2画出算法的程序流程图;
1、3写出相应模块的源程序文件;
1、4设计一主程序界面进行封装。
2 概要设计
该程序的主要功能是实现学生档案的管理,包括录入学生信息、显示学生信息、查询学生信息、删除学生信息、添加学生信息、修改学生信息,以及查询的方式(按学号查询、按姓名查询、按性别查询、按年龄查询)。并统计学生的所有信息。
3 设计过程或程序代码
本程序由一个Void main(),一个Void input(),一个Void Save(),一个Void display(),一个Void Delete() ,一个Void add和一个Void Search()共七个主要函数来实现该程序的编程的。其中在主函数Void main()中调用其他六个函数,通过Switch语句来实现调用进入各个函数,进入主菜单通过录入函数录入学生信息,并自动保存在c\\student.txt中。学生信息输入应用了结构数组,学生信息主要包括姓名,学号,性别,年龄以及备注。其中年龄为整型,其他为字符型。调用函数时,学生信息运用了指针数组,如void Modfiy(struct student* arr,int n)在Void Delete()调用函数中,当bool flag=ture是该学生不存在,即已被删除。在Void search()调用函数中,当bool flag=ture是该学生存在,即已被查询到。当flag=false时则说明没有该学生信息。在查询系统中,有四种查询方式,分别是按姓名查询,按学号查询,按性别查询和按年龄查询。四种查询方式用Switch语句连接起来,进入每种查询方式要输入所需信息才能进入。该程序最大的特点是Switch连接各调用函数和各查询方式以及结构数组的运用,将各函数有序的连接起来。各个调用函数功能的实现如下:1)信息的录入主要运用循环语句将各个学生信息依次输入
2)信息的显示也是用循环语句将各个学生信息显示出来。
3)信息的保存是将信息重写到保存到的文件位置,其中信息保存在
c:\\student.text
4)信息的删除是运用字符串复印函数,将空格复印到信息字符上达到删除效果。
5)信息的修改是输入学号用循环语句将需修改的信息显示出来,然后再输入新的信息
6)信息的查询是通过Switch语句将查询方式连接起来,并在各个查询方式中用循环语句将要查询的信息显示出来
4 设计结果与分析
void search_age()
{
int age;
int i, t;
int m=load();
printf("请输入要查找的年龄:\n");
scanf("%d",&age);
for(i=0;i if(age==st[i].age) { printf("\n已找到此人,其记录为:\n"); printf("\n学号\t姓名\t性别\t年龄\t备注 \n"); printf("\n%d\t%s\t%c\t%d\t%s\t%s\t%s\t%ld\n",st[i].num,st[i].name ,st[i].sex,st[i].age,st[i].xueli,st[i].beizhu,st[i].addr,st[i].tel);b reak; } if(i==m) printf("\n对不起,查无此人\n"); printf("\n"); printf("返回查询函数请按,继续查询年龄请按\n"); scanf("%d",&t); switch(t) { case 1:search();break; case 2:break; default :break; } } 这段程序的功能是按年龄查询来查询学生的相关信息,如果输入正确就能得到该学生的学号姓名性别备注等信息,如果输入有误,将得不到有效信息,并返回查询函数重新选择。 5 参考文献 C语言程序设计(第三版)谭浩强著 《C语言程序设计》(第2版)人民邮电出版社 《C程序设计》(第三版)北京邮电大学出版社 《C语言程序设计案例分析》清华大学出版社 源程序 #include #include #include #include #include #define N 100 struct student { int num; char name[10]; char sex; int age; char xueli[30]; char beizhu[50]; char addr[30]; long int tel; } st[100]; /*定义一个结构体*/ void menu(); void input(); void save(int); void display(); void del(); void add(); void search(); void search_num(); void search_name(); void search_sex(); void search_age(); void modify(); /*定义各函数*/ void menu() /*菜单函数*/ { printf(" ☆☆☆网络工程☆☆☆\n"); printf("\n"); printf(" ∮***班 ****∮\n"); printf("\n"); printf(" ******************学生档案管理 ****************\n"); printf(" 1.录入学生信息"); printf(" 2.显示学生信息\n"); printf(" 3.查询学生信息"); printf(" 4.删除学生信息\n");