- 1、本文档共30页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE
南昌大学软件学院
C语言程序设计工程实训
大
作
业
班级: 09软件技术(2)班
学号: 8001509107
姓名: 吴承增
指导老师: 危建国
2010年12月
系统说明书
1.问题描述:
该程序包内容包括以下的模块,均用子函数完成:
(1)主菜单
(2)输入若干条记录并保存文件(指学生的信息)
(3)学生信息录入、修改、删除、查询、存储。
(4)学生信息的浏览及排序(冒泡排序算法)。
(5)学生成绩的录入、修改。
(6)统计及格和优秀人数
(7)退出系统
2.程序设计和程序流程图:
解决方案:
学生成绩档案管理
学生成绩档案管理
主菜单
学生成绩管理
学生档案管理
查询
统计
录入成绩
修改成绩
读入学生信息
录入学生成绩
查询学生成绩
修改学生信息
删除学生信息
存储学生信息
按学号查询
按姓名查询
按学号排序
浏览
按数学成绩排序
按成绩排序
按英语成绩排序
按C语言排序
按总成绩排序
主函数流程图:
F
For(;;)循环
用“cls”清屏
P5||p0
进入主菜单MainMemu()
输出switch语句句
输入case语句
开始
选择功能键进入系统
定义学生str[MAX]
定义结构体student
各部分功能的流程图:
录入学生成绩流程图:
i=i+1
i=i+1
开始
用”cls”清屏
do while 输出成绩
退回主菜单
Ncount=1
Y
N
统计功能流程图如图3所示:
图3 统计模块流程图
冒泡排序流程图:
声明存储数列变量
声明存储数列变量
nCardArray
[]
声明外层循环控制变量
i
声明内层循环控制变量
j
声明临时变量
temp
开
始
结
束
nCarrdArray
[
j
]
与
nCrrdArray
[
j
+
1
]
值互换
输出结果
for i
=
0
to
5
for j
=
0
to
5
-
i
nCarrdArray
[
j
]
nCrrdArray
[
j
+
1
]
for j
=
0
to
6
真
假
排序学生信息流程图:
开始
开始
把第i+1个学生信息复制传递到下一个结构体中
switch语句 case(q)
定义指向char数组形式排序
q0,q=5
Case1…case5
返回主菜单
用”cls”清屏
定义结构体student
删除学生成绩信息流程图:
N
N
Y
N
Y
开始
n=SearchStud
nCOUNT-=1
是否删除?
for(i=0;inCOUNT;i++)
学号、姓名、个课程成绩数据前移
输出成功提示
nCOUNT-=1
结束
3.系统的基本功能(主要数据和函数功能描述):
char xh[15]; //以字符串数组形式存储学生学号
char name[25]// 以字符串数组形式存储学生姓名
char sex[5]; //性别 float sxcj; //数学成绩
float yycj; //英语成绩 float Cyycj; //C语言成绩
float ave; //平均成绩 float sum; //总成绩
#define N 4 //宏定义学生 #define MAX 60 //学生最大个数
int nCOUNT=0; //记录当前学生个数struct student //定义结构体学生
int ScoreNew() //录入学生成绩int average() //求平均数
int xsxscj() //显示输入学生信息、将学生打印到屏幕上
int xsxsxx() //显示学生信息int xhcjpx() //按学生学号排序学生信息int sxcjpx()按数学成绩排序学生信息int yycjpx()按英语成绩排序学生信息
int Cyypx() //按C语言成绩排序学生信息int zcjpx()按总成绩排序学生信息
int pxxsxx()//排序学生信息 int axhcx() //按学号查询
int axmcx() //按姓名查询int SearchStud() //查询学生成绩信息
int zjxsxx() //增加学生信息int xgxsxx() //修改学生信息
int scxsxx() //删除学生信息int gxxscj() //更新学生信息
int tjxscj() //统计学生成绩int save() //保存到文件
((fp=fopen(stu_list
文档评论(0)