C 程序设计报告 1
中国地质大学
C 语言课程设计报告
题 目:学生成绩管理系统
设 计 者
:康凯
专 业:测绘工程
班级学号:56062-04
指导教师:薛老师
C 程序设计报告 2
所属院系:信息工程学院
2008 年 9 月 7 日
1
题目与要求
1.1
问题提出(左对齐,宋体粗小四号)
计划编写一个学生成绩管理系统以统一管理学生的基本信息(学号,姓名,
年龄)和学习成绩(数学,英语,物理),默认以学号为序存放。
1.2
本系统涉及的知识点
结构、数组、循环、函数、分支、指针
1.3
功能要求
题目所要实现的功能
(小四,宋体),
1
、
建立学生信息,每个学生的信息包括:学号、姓名、年龄
;
2
、
计算每个学生的总成绩
;
3
、
以班为单位存储学生纪录
;
4
、
根据学号查询成绩
;
5
、
按学号排序输出全班成绩表
。
2
功能实现设计
主菜单:
请输入选项编号(
A~F
)
图
1
学生成绩管理系统主菜单
A
—
输入学生信息
B
—
修改学生信息
C
—
删除学生信息
D
—
查找学生信息
E
—
浏览学生信息
F
—
退出程序
C 程序设计报告 3
3
系统模块图
图
2
学生成绩管理系统模块图
4
模块流程图,数据结构设计
1.
主函数
查询信息 更新信息
设计信息 输出信息输入信息
学生成绩管理系统
从文件读入 从键盘输入 按学号查询 按姓名查询
修改记录 删除记录 插入记录
输出至屏幕
计算学生
的总成绩
排序记录
ch 输入判断显示是否为 A-F
调 用 各 菜 单 函 数
N 按 任
意 键 退
出
Whlie
循 环
输出至文件
功 能 菜 单 显 示
C 程序设计报告 4
程序代码:
main()
{
while(1) //
一直循环运行
{
printf(" *********welcome to use student
manager****************** \n");
printf("
***********************menu*******************************\n");
printf("*
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * \n");
printf("* A)enter B)modify * \n");
printf("* C)del D)search * \n");
printf("* E)browse F)exit * \n");
printf("************************************************************\n");
printf("*
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ \n");
printf(" Please input which you want(A-F):");
ch=getchar(); //
输入
ch
的值
switch(ch) //
根据
ch
的值执行下面代码
{
case 'A':enter(); break; //
调用
enter()
函数,输入数据
case 'B':modify(); break; //
调用。。函数,修改数据
case 'C':del(); break; //
删除数据
case 'D':search(); break; //
搜索数据
case 'E':browse(); break; //
浏览数据
case 'F':exit(0); //
退出程序
default: continue; //
跳到下一个循环
}
}
return 0;
}
2.
修改模块
C 程序设计报告 5
3.
删除模块
输入需修改的学生的学生 n
学 号 存
在 与 否
Y 选 择 你 所 要 修改
的 学 生 成 绩
N 围 找 到 需 修 改
学 生 学 号
数 据 修 改
调用 fwrite 函数写入指定文本
保 存
返 回 主 菜 单