“c语言程序设计”课程设计报告。
班级档案管理。
学生姓名: 王标刘慧慧魏枫林奚亚运
指导教师夏芸。
所在系: 电子信息系。
所学专业: 计算机科学与技术
年级班级2011级2班。
2012 年 6月14日。
班级档案管理。
摘要。本次课程设计要求我们以小组的形式进行的,共同完成一个班级档案管理系统的编写。本次课程设计就要求我们完成课程设计的独立性,同时也要求我们有团体的合作精神,帮助我们进一步熟悉c语言程序设计的特点。
小组成员通过合作和查阅资料完成了课程程序设计,设计中由void main(),void input(),void s**e(),void display(),void delete() void add()和void search()共七个主要函数来实现该程序的编程的。其中在主函数void main()中调用其他六个函数,通过switch语句来实现调用各个函数,进一步掌握函数的应用,以及文件的读写操作等。
关键词:管理函数文件。
1 课程设计题目和要求。
1.1 课程设计题目描述。
对一个有n个学生的班级,通过该系统实现对该班级学生的基本信息进行录入、显示、修改、删除、保存等操作的管理。
1.2 课程设计要求。
课程设计要求如下:
1)学生基本信息包括:学号、姓名、性别、年龄、备注。
2)本系统显示类似这样的菜单:
请选择系统功能项:
a 学生基本信息录入。
b 学生基本信息显示。
c 学生基本信息保存。
d 学生基本信息删除。
e 学生基本信息修改(要求先输入密码)
f 学生基本信息查询。
1--按学号查询。
2--按姓名查询。
3--按性别查询。
4--按年龄查询。
g. 退出系统。
3)执行一个具体的功能之后,程序将重新显示菜单。
4)将学生基本信息保存到文件中。
5)进入系统之前要先输入密码。
1.3 人员组成和分工。
王标负责整体设计,分析大概步骤和所用知识,负责程序测试和链接,以及程序的主函数设计。
刘慧慧负责输入信息函数和保存信息函数。
魏枫林负责显示信息函数和删除信息函数。
奚亚运负责添加信息函数和查找信息函数。
2 总体设计。
2.1 数据结构。
学生信息结构体类型是什么,信息文件存放的格式规定是什么。
程序设计主要划分成input()、s**e()函数、display()、delete()函数、add()、search()函数,分别对信息进行录入、保存、显示、删除、修改、添加和查找。
各个调用函数的实现的功能:
1) 信息的录入主要运用循环语句将各个学生信息依次输入。
2) 信息的显示也是用循环语句将各个学生信息显示出来。
3) 信息的保存是将信息重写到保存到的文件位置,其中信息保存在c:\\
4) 信息的删除是运用字符串复印函数,将空格复印到信息字符上达到删除效果。
5) 信息的修改是输入学号用循环语句将需修改的信息显示出来,然后再输入新的信息。
6) 信息的查询是通过switch语句将查询方式连接起来,并在各个查询方式中用循环语句将要查询的信息显示出来。
3 详细设计。
3.1 对学生信息的录入和保存、读取。
1)信息的录入。
主要运用循环语句将各个学生信息依次输入,具体c语言算法描述如下:
void input() 录入函数*/
printf("请输入需要创建信息的学生人数(1--100):");
scanf("%d",&m);
for (i=0;i
printf("创建完毕!");
s**e(m);
2)信息的保存。
主要运用循环语句将各个学生信息依次写入到文件中,具体c语言算法描述如下:
void s**e(int m) /保存文件函数*/
if ((fp=fopen("c:\\wb"))null)
for (i=0;i if (fwrite(&st[i],sizeof(struct student),1,fp)!=1)
printf("file write error");
fclose(fp);
3)信息的读取。
主要运用循环语句将各个学生信息从文件中读入到结构体数组中,具体c语言算法描述如下:
int load() 导入函数*/
if((fp=fopen("c:\b"))null)
else while(feof(fp)==0);
fclose(fp);
return(i-1);
3.2 学生信息的显示和删除。
1)信息的显示。
主要运用循环语句将学生信息结构体数组中的内容输出,具体c语言算法描述如下:
void display() 显示函数*/
int m=load();该函数的功能是什么,写出来。
printf(" 学号\t姓名\t性别\t年龄 \t备注 ");
for(i=0;i printf(" %d\t%s\t%c\t%d\t%s\t%s\t%s\t%ld",st[i].num,st[i].name,st[i].
sex,st[i].age,st[i].xueli,st[i].
beizhu,st[i].addr,st[i].tel);
2)信息的删除。
输入学生姓名,在学生信息结构体数组中找到该人信息后进行删除,具体c语言算法描述如下:
void del() 删除函数*/
int m=load();
int i,j,n,t,flag;
char name[20];
printf(" 原来的学生信息:");
display();调用显示函数*/
printf("");
printf("请输入要删除的学生的姓名:");
scanf("%s",name);
for(flag=1,i=0;flag&&i {
if(strcmp(st[i].name,name)==0)
printf("已找到此人,原始记录为:");
printf("学号\t姓名\t性别\t年龄\t备注 ");
printf("%d\t%s\t%c\t%d\t%s\t%s\t%s\t%ld",st[i].num,st[i].name,st[i].
sex,st[i].age,st[i].xueli,st[i].
beizhu,st[i].addr,st[i].tel);
printf("确实要删除此人信息请按1,不删除请按0");
C语言班级档案管理系统
课程设计任务书。课程名称 c语言课程设计 课题班级档案管理系 1.设计目的。2.总体设计。3.详细设计。4.调试与测试 5.总结与体会。6 评分。附 源程序清单和执行。1 设计目的。a 了解和掌握c语言面向对象程序设计的基本过程。b 进一步熟悉c语言的特点。c 学会总体规划一个程序,从各个部分把一个...
C语言班级档案管理系统
课程设计任务书。课程名称 c语言课程设计 课题班级档案管理系 1.设计目的。2.总体设计。3.详细设计。4.调试与测试 5.总结与体会。6 评分。附 源程序清单和执行。1 设计目的。a 了解和掌握c语言面向对象程序设计的基本过程。b 进一步熟悉c语言的特点。c 学会总体规划一个程序,从各个部分把一个...
c语言班级档案管理系统
郑州工业应用技术学院。课程设计说明书。题目 班级档案管理系统 姓名徐朝胜。院 系信息工程学院 专业班级 15级计算机科学与技术三班 学号1501110324 指导教师王礼云。成绩。时间 2016 年 12 月 5 日至 2017 年 1 月 5 日。郑州工业应用技术学院。课程设计任务书。题目班级档案...