班级档案管理系统.docx
《班级档案管理系统.docx》由会员分享,可在线阅读,更多相关《班级档案管理系统.docx(18页珍藏版)》请在冰豆网上搜索。
班级档案管理系统
课程设计报告
课程名称《C语言程序设计》
课题名称班级档案管理系统
专业轻化工程
班级轻化0702
学号2
姓名唐莹
指导教师陈世清扬子华罗敬
2009年5月4日
湖南工程学院
课程设计任务书
课程名称《C语言程序设计》课题班级档案管理系统
专业班级轻化工程
学生姓名唐莹
学号2
指导老师陈世清扬子华罗敬
审批
任务书下达日期2009年5月4日
任务完成日期2009年5月10日
一、设计内容及设计要求
1.设计内容:
对一个有N个学生的班级,通过该系统实现对该班级学生的基本信息进行录入、显示、修改、删除、保存等操作的管理。
2.设计要求:
1)本系统采用一个包含N个数据的结构体数组,每个数据的结构应当包括:
学号、姓名、性别、年龄、备注。
2)本系统显示这样的菜单:
请选择系统功能项:
a.学生基本信息录入(要求先输入密码)
b.学生基本信息显示
c.学生基本信息删除(要求先输入密码)
d.学生基本信息修改(要求先输入密码)
e.学生基本信息查询
(1)按学号查询
(2)按姓名查询
(3)按性别查询
(4)按年龄查询
f.退出系统
3)执行一个具体的功能之后,程序将重新显示菜单。
4)将学生基本信息保存到文件中。
5)进入系统之前要先输入密码。
二、进度安排
星期一布置任务,查找资料。
星期二确定总体方案,进行详细设计。
星期三编写程序,上机调试。
星期四编写程序,上机调试。
星期五答辩,总结。
星期六~星期天写课程设计报告
一.设计目的…………………………………………………1
二、总体设计………………………………………………1
2.1程序设计组成框图……………………………………5
2.2流程图…………………………………………………6
三、详细设计………………………………………………8
3.1功能介绍…………………………………………………8
3.2用户使用说明书……………………………………………9
四、调试及测试……………………………………………10
4.1参考文献…………………………………………………10
4.2结果分析及问题讨论……………………………………11
4.3心得体会…………………………………………………12
附件:
源程序清单和评分表
一课程设计目的
全面熟悉C语言基本知识,进一步掌握程序设计及调试,结果分析的方法和技巧,进一步提高上机动手能力,养成提供文档资料的习惯,掌握程序化设计的重要思想,采用自顶向下,逐步求精的方法编制程序解决一些实际问题,为以后的学习和工作打下较好的基础。
为将来使用和开发软件积累一些典型的案例处理经验。
二总体设计
2.删除函数流程图
3.修改函数流程图
4.查找函数流程图
三详细设计
3.1功能介绍
问题描述:
对一个有N个学生的班级,通过该系统实现对该班级学生的基本信息进行录入、显示、修改、删除、保存等操作的管理。
基本功能:
1)本系统采用一个包含N个数据的结构体数组,每个数据的结构应当包括:
学号、姓名、性别、年龄、备注。
2)本系统显示这样的菜单:
请选择系统功能项:
f.学生基本信息录入(要求先输入密码)
g.学生基本信息显示
h.学生基本信息删除(要求先输入密码)
i.学生基本信息修改(要求先输入密码)
j.学生基本信息查询
(1)按学号查询
(2)按姓名查询
f.退出系统
3)执行一个具体的功能之后,程序将重新显示菜单。
4)将学生基本信息保存到文件中。
5)进入系统之前要先输入密码。
3.2.用户使用说明书
()函数是程序的入口,程序从它开始执行,它里面包含了各个模块,其中也要声明一些变量通过调用各个函数实现各个模块的作用,并且包含一个选择语句,实现选择功能。
():
字符串比较函数,进行密码等字符串的比较;
():
字符串拷贝函数,进行字符串的拷贝;
():
添加函数,用于添加学生信息;
():
显示函数用于显示学生信息;
():
修改函数用于修改学生信息;
():
查找函数用于根据学号`姓名进行查找;
():
删除函数用于删除学生基本信息;
进入此程序主菜单时,首先必须正确输入正确的密码,如果输入错误,系统便提醒你再次输入密码;如果输入了正确的密码,便进入了主菜单。
进入之后系统便提醒你从,中选择你要进行的操作。
选择a便进入了显示学生基本信息的函数,系统便将储存的所有学生的基本信息显示出来。
然后按键便会回到主函数菜单。
选择b便进入了增加学生基本信息的函数,进入此函数后按照系统的要求依次输入你要增加学生信息的人数,新增加学生的学号,姓名,性别,年龄和其他信息,然后核对系统显示学生的信息是否及你所输入的一致,无误后按键接着输入下一个学生的信息。
输入完毕后,按键回到主菜单。
选择便进入了删除学生基本信息函数,选择你要删除学生信息的学号,系统便进行删除。
如删除成功系统便显示;否则显示.显示则说明系统中没有你所要删除的学生的信息。
按键再回到主菜单。
选择d便进入了修改学生基本信息菜单,进行修改前必须再次输入正确得密码,输入正确进入修改函数;错误,系统便提醒你再次输入密码。
进入修改函数后,输入你要修改学生信息的学号,根据系统的显示依次输入新的学生的学号,姓名,性别,年龄和其他信息。
核对系统所显示的学生的信息,无误后,按键返回主菜单。
选择e便进入了查找学生基本信息函数,进入此函数后,根据系统的提示选择你所要查找的方式。
比如你若选择了2,则接着输入你所要查找的姓名。
查找完之后按键返回主菜单。
四、调试及测试
4.1、参考文献
[1]谭浩强。
C语言程序设计(第二版)。
清华大学出版社[M],199912
(1):
298-327
[2]苏小红。
C语言程序设计,电子工业出版社,20022
[3]刘振安。
C语言程序设计实训,清华大学出版社,200210
[4]杨路明。
C语言程序设计教程,北京邮电大学出版社
[5]马靖善。
C语言程序设计,清华大学出版社,2005
4.2结果分析及问题讨论
在调试过程中出现了很多问题.首先在调试时,忘了在前加导致程序不能运行!
其次,有段程序后面忘记加“}”了,而有的又忘记加“;”了。
竟然范了这么幼稚的错误,实属不该啊。
同时一些很常见的问题也不时出错!
4.3心得体会
按照教学安排计划,我们轻化班在十一周进行了一周的关于C语言的课程设计。
这次实习周给我们充足的时间自己构思,自己设计,自己调试,自己分析,同时还有专门的老师指导我们。
通过这次的课程设计我体会很多,虽然书上的知识我们学完了,但由于C语言课上期就学完了,很多东西都慢慢的忘记了。
虽然都只是些基础,但要真正掌握并且会灵活应用它来编程还真的难。
我们平常没有什么机会去进行编程,这次刚开始时很无奈,但经过几天的上机实践以后自己也开始慢慢的去学习,去实践!
C语言课程设计不仅能提高教学质量、增强教学效果、而且能培养和提高我们分析问题、解决问题能力和创新能力。
老师在给我们定制的任务书中中,围绕我们的所学的书本的基本知识点引导引导我们思考和探索,是我们的思想活跃起来。
课程设计完了,自己也掌握了一些知识!
但自己要说真正掌握了很多知识的话,也没什么太多!
但学习就是要不断的发现问题,才能不断的解决问题,不然不会有什么成效,更谈不上进步啦。
实际上,问题是最好的老师,是学生学习的引导没有问题便没有深入。
在C语言程序设计过程中,我们就是在问题解决中学习,即提出问题,老师也留了大量的时间给我们思考、讨论、解决问题,从而更深入地展开学习。
这样就充分的调动了我们学习的积极性和主动性。
老师教给学生正确的学习方法,给我们这么好的机会,让我们掌握C语言的的思想精髓在这次的实践过程中我独立的思考着这些问题,自己试着设计着这些比较有趣的课题,把课堂上学的,和语句还有数组的使用和指针的用法及作用都有了进一步的认识。
从这次编程中我认识到做什么事情要求绝对的细心,马虎不得。
程序设计课程的实践性很强,通过这次实践也增强自己的动手能力。
让自己在以后的学习中要努力,认真
这次的课程设计题是《班级档案管理系统》,设计选题既接近实际需要,又能够让我们感兴趣、能够运用所学知识解决。
锻炼了我们的动手能力,进一步培养我们分析问题、解决问题、研究和探索问题的能力和团队协作精神。
C语言不仅仅要求我们掌握基本的语法知识,更要通过课程设计培养抽象思维和逻辑推理能力,掌握程序设计的思想和方法尽管在设计中遇到了不少的问题,回想起来最主要的原因就是对C语言程序设计的不熟悉和不了解,这样就算是遇到了错误了不知道修改,所以程序设计就无法进行下去。
但是通过一周的课程设计,使我对C语言有了很大程度上的了解,也能掌握一写基本的有关C语言的知识。
通过这次的程序设计周,让我明白了只有努力,只要自己真正的去做一件事情,认真,仔细!
这样才能让自己不仅在这一周,更在以后的学习和工作中有很好的耐心,才能做出一番成就!
附件:
源程序清单
<>
<>
<>
f[20]="8681208";
{
[10];/*学生学号*/
[20];/*姓名*/
[5];/*性别*/
;/*年龄*/
[100];/*备注*/
}[50]={{"010101","","",22,"12-503"},
{"010102","","",23,"12-303"},
{"010103","","",19,"12-303"},
{"010104","","",20,"12-303"},
{"010105","","",22,"12-303"},
{"010106","","",23,"12-303"},
{"010107","","",22,"12-303"},
{"010108","","",19,"12-303"},
{"010109","","",18,"12-303"},
{"010110","","",23,"12-303"}};/*数组初始化*/
(a)/*学生基本信息录入函数*/
{
j[10][1],k[20][4][50];
;
();/*清屏处理*/
("\n:
");
("");
(<)
{("\n");
("\n\n.:
");
("");
("\n:
");
("");
("\n:
");
("");
("\n:
");
("");
("\n:
");
("");
([i]);/*拷贝学生基本信息*/
([i]);
([i]);
[i];
([i]);
();
("\n:
");
("\n.:
:
:
:
\n");
("10.1015.1510.10825.25s\n"[n][n][n][n][n]);
();}
;
}
(n)/*学生基本信息显示函数*/
{
i;
("\n\n:
");
("\n\n.:
:
:
:
\n");
(<)
("10.1015.1510.10825.25s\n"[i][i][i][i][i]);
();
}
(n)/*学生基本信息修改函数*/
{
j[10][1][20][4][50];
0;
h[20];
();/*清屏处理*/
("\n:
");/*身份验证*/
("");
(()<3)/*密码比较*/
(",!
");
(x>3);
("\n:
");
("\n\n.:
");
("");
(0<)/*修改基本信息输入*/
(([i]));
("\n:
");
("");
("\n:
");
("");
("\n:
");
("");
("\n:
\n");
("");
([i]);/*拷贝学生基本信息*/
([i]);
([i]);
[i];
([i]);
("\n:
");
("10.1015.1510.10825.25s\n"[i][i][i][i][i]);
();
}
(n)/*学生基本信息查找函数*/
{();
("\n\n\n");
("
(1).\n");
("
(2)\n");
("\n");
(":
");
("");
(l)/*语句查找*/
{
1:
/*按学号查找*/
{r[10];s;
("\.");
("");
(0<)
(([s])0)
{
(1);
;
}
("\n!
!
\n!
");
();
;}
2:
/*按姓名查找*/
{r[10][1];s;
("\n.");
("");
(0<)
(([s])0)
{
(1);}
("\n!
!
\n!
");
();
;}
}
}
(n)/*学生基本信息删减函数*/
{
r[10][1],;
();
(".del:
");
("");
(0<)
{
(([s])0)
{
(<)
{
([t][1])*拷贝学生基本信息*/
([t][1]);
([t][1]);
([t][1]);
[t][1];
}
("\n\nDel!
!
\n");/*删减成功*/
();
1;
}
}
("\n\nDel!
!
");/*删减失败*/
();
n;
}
()/*主函数*/
{
9;
00;
[20]="8681208";/*设置密码*/
("\n:
");/*输入密码*/
((k[i]())'\r')/*密码比较*/
{("*");}
k[i]=0;
(())
{0;;
("\n!
");
();
("\n:
");/*输入密码*/
((k[i]())'\r')
{("*");}/*密码比较*/
(j>=2)
{("!
");
();
(0);}
}
(;;)
{();/*班级档案管理系统欢迎界面*/
("\n\n\r\r\r\t\2110501'\2221\n");
("\t****a****\n");/*选择菜单*/
("\n\n\\n");
("\\n");
("\\n");
("\\n");
("\\n");
("\\n\n");
("g\n");
(":
");
()();
(m)/*语句选择*/
{
'a':
'A'(n);
'b':
'B'(0);
'c':
'C'(n);
'd':
'D'(n);
'e':
'E'(n);
'g':
'G'(0);
("!
!
!
");
}
}
课程设计评分表
课程名称:
C语言程序设计
项目
评价
设计方案的合理性及创造性
设计及调试结果
设计说明书的质量
答辩陈述及回答问题情况
课程设计周表现情况
综合成绩
教师签名:
日期: