- 3
- 0
- 约1.39万字
- 约 27页
- 2021-06-27 发布于山东
- 举报
精品文档
精品文档
PAGE
PAGE21
精品文档
PAGE
语言课程设计
院系:工程学院
姓名:刘若愚
学号:20051001606
班号导教师:王老师
日期:2007年9月
语言程序设计报告
第一部分 题目要求
程序目:学生学籍信息管理系
【要求】
使用下面的数据,一个的学籍信息管理系。
学生基本信息文件(A.TXT)及其内容:
学号
姓名
性
宿舍号号
01
成成
男
50102
李成
女
10103
王成
女
10104
明明
男
50205
男
50106
李果
男
50207
园园
女
102?.
??
?.
?..
???.
学生成基本信息文件(B.TXT)及其内容:
学号程号 程名称 学分平成 成 卷面成
01
A01
大学物理3
66
78
82
02
B03
高等数学
4
78
-1
90
01
B03
高等数学
4
45
-1
88
02C01
VF
3 65
76
66
?. ?..
???
..
?.
?.
?..
功能要求及明:
数据入功能:入每个学生的学号、程号、程名称、学分、平成、成、卷面成共7个数据。合成、得分根据条件自运算。
合成的算:
如果本程的成-1,表示无,合成=平成*30%+卷面成*70%;
如果成不-1,表示本程有,合成=平成*15%+成*15%+卷面成*70%。
得学分的算:采用等学分制。
合成在90-100之,得学分=学分*100%;合成在80-90之,得学分=-学分*80%;合成在70-80之,得学分=学分*75%;合成在60-70之,得学分=学分*60%;合成在60以下,得学分=学分*0%。
2)功能;分学生基本情况和成两种
1》学生基本情况:
入一个学生的学号活姓名,出今生的基本信息并示
出。
入一个宿舍号,可出本室所有的学生的基本信息并
示出。
成:
入一个学号,出今生的所有程情况,格式如下:
学号:
姓名;
程号:
程名称:
合成:
得学分:
程号:
程名称:
合成:
得学分:
程号;
程名称:
合成:
得学分:
????
????
??..
????
共修:XX科, 得学分:XXX
除功能:当在A.TXT中除一个学生,自地在B.TXT中除此人所有的信息
排序功能:能按合成或得学分升序或降序排序并
示数据。
第二部分 需求剖析
根据目要求,由于学生信息是寄存在文件中,所以提供文件的入、出等操作;在程序中要学生的信息,提供示、找、排序等操作;此外提供式菜功能。
第三部分 总体设计
根据上面的需求剖析,能够将个系的分以下几个模:
学生成绩管理系统
数据输入 数据显示 数据查找 数据插入 成绩排序
第四部分 详尽设计
主函数
主函数设计一般要简单,只提供输入,办理和输出部分的函数调用。
其中各功能模块用菜单方式选择。
【流程图】
显示一系列功能选项
N
输入n,判断n是否是0-7
Y
根据n的值调用各功能模块函数
[程序]
#includestdio.h
voidmenu()
{intn,w;
do{puts(\t\t**********MENU***********\n\n);
puts(\t1.browse2.enter3.Search);
puts(\t4.browse25.enter26.Search2);
puts(\t7.exit);
puts(\n\n\t\t*************************\n);
printf(Choiceyournumber(1-7):[]\b\b\b\b);
scanf(%d,n);
if(n1||n7)
/
对选择的数字作判断
/
{w=1;getchar();}
elsew=0;}
while(w==1);
switch(n)
{
case1:browse();break;
case2:enter();break;
case3:search();break;
case4:browse2();break;
case5:enter2();break;
case6:search2();break;
case7:exit(0);break;
/
/
////
/
浏览模块/
输入模块/
查找模块/
浏览模块/
输入模块/
查找模块/
退出/
}}
main()
{menu();}
2》各功能模块设计
输入模块:先采用构造体数组存储数据
structa
{intxuehao;charname[15];charsex[10];intshushenum;inttelenum;}a[10];
structb
原创力文档

文档评论(0)