C程序课程设计报告.docx
- 文档编号:9240521
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:15
- 大小:18.09KB
C程序课程设计报告.docx
《C程序课程设计报告.docx》由会员分享,可在线阅读,更多相关《C程序课程设计报告.docx(15页珍藏版)》请在冰豆网上搜索。
C程序课程设计报告
河南理工大学
计算机科学与技术学院
课程设计报告
2011—2012学年第2学期
课程名称C语言程序设计
设计题目学生成绩管理系统
学生姓名陈俊
学号310009030212
专业班级信管1002
指导教师于金霞
2011年11月4
一.设计题目
学生成绩管理系统
二、课题的任务:
1、所有记录保存在一个数据文件中;
2、具备记录添加功能;
3、查询功能(如按学号查询成绩等);
4、计算统计功能(如统计某门课程的平均程序);
5、排序功能(如按成绩排序);
6、统计并显示信息功能;
三.课程设计目的
了解软件工程中的一些系统分析,模块分析,代码设计的概念,利用visualc++实现学生成绩管理系统的录入、查询、删除、统计等基本操作,掌握C语言中的结构体、指针、函数(系统函数、自定义函数)、文件操作等知识。
通过对系统的分析和设计,进一步巩固C语言的学习,以提高对开发环境
四.实验步骤
(1)a:
主函数的编译
b:
定位指针的Locate()函数的编译,与调试。
c:
主菜单函数的编译,及其它外部函数的编译,与调试。
d:
任务分配,规定变量符号,及变量的初始化。
e:
程序的组装及调试。
(2)a:
统计数据函数的编译。
b:
:
查找学生记录函数的编译。
c:
增加学生记录的函数的编译
(3)a:
删除函数的编译
b:
修改函数的编译
c:
排序函数的编
(4)a:
显示函数的编译。
b:
欢迎界面的制作。
c:
保存函数的编译
五.源程序代码
#include
#include
#include
#definet100
voidfun(structstudent*s);
voidfun1(structstudent*s);
voidfun2(structstudent*s);
voidfun3(structstudent*s);
voidfun4(structstudent*s);
voidfun5(structstudent*s);
voidfun6(structstudent*s);
structstudent
{
charno[20];
charname[20];
charspec[20];
intgrade;
charsex[20];
};
voidmain()
{
structstudents[t]={{"10001","zhang","chinese",12,"male"},
{"10002","wang","math",13,"fale"},
{"10003","lisi","chemsi",12,"male"},
{"10004","mazhi","english",13,"fale"},
{"10005","kuko","math",14,"male"}};
fun(s);
}
voidfun(structstudent*s)
{
intn;
printf("\n\n\t\t学生档案管理系统");
printf("\n\n\t----------------------------------------");
printf("\n\n\t\t1:
录入学生信息系统");
printf("\n\n\t\t2:
修改学生信息系统");
printf("\n\n\t\t3:
删除学生信息系统");
printf("\n\n\t\t4:
查询学生信息系统");
printf("\n\n\t\t5:
输出学生信息系统");
printf("\n\n\t\t6:
退出系统");
printf("\n\n\t----------------------------------------");
printf("\n\n请选择你要的服务(按数字1~6进入):
");
scanf("%d",&n);
system("cls");
if(n==1)
{
printf("\n\n\t\t欢迎进入录入学生系统");
fun1(s);
}
elseif(n==2)
{
printf("\n\n\t\t欢迎进入修改学生系统");
fun5(s);
}
elseif(n==3)
{
printf("\n\n\t\t欢迎进入删除学生系统");
fun6(s);
}
elseif(n==4)
{
printf("\n\n\t\t欢迎进入查询学生系统");
printf("\n\n\t----------------------------------------");
printf("\n\n\t\t1:
按学号查询学生信息系统");
printf("\n\n\t\t2:
按班级查询学生信息系统");
printf("\n\n\t----------------------------------------");
printf("\n\n请选择你要的服务(按数字1~2进入):
");
scanf("%d",&n);
system("cls");
if(n==1)
{
printf("\n\n\t\t1:
按学号查询学生信息系统");
fun2(s);
}
elseif(n==2)
{
printf("\n\n\t\t1:
按班级查询学生信息系统");
fun3(s);
}
else
{
printf("\n\n\t\t数据错误");
}
}
elseif(n==5)
{
printf("\n\n\t\t欢迎进入输出学生系统");
fun4(s);
}elseif(n==6)
{
printf("\n\n\t\t谢谢使用学生管理系统!
\n");
printf("\n\n\t\t请双击Enter键退出系统:
");
getchar();
getchar();
exit(0);
}
else
printf("\n\n\t\t数据错误");
}
voidfun1(structstudent*s)
{
intn,i;
chard;
printf("\n\n\t请输入学生的数量:
");
scanf("%d",&n);
for(i=5;i { printf("\n\t\t请输入学生学号: "); scanf("%s",s[i].no); printf("\n\t\t请输入学生姓名: "); scanf("%s",s[i].name); printf("\n\t\t请输入学生专业: "); scanf("%s",s[i].spec); printf("\n\t\t请输入学生年级: "); scanf("%d",&s[i].grade); printf("\n\t\t请输入学生性别: "); scanf("%s",s[i].sex); getchar('\n'); system("cls"); } printf("\n\n\t\t学号\t姓名\t专业\t年级\t性别"); printf("\n\t---------------------------------------------------"); for(i=0;i { printf("\n\n\t\t%-8s%-8s%-8s%-8d%-8s",s[i].no,s[i].name,s[i].spec,s[i].grade,s[i].sex); } printf("\n\t---------------------------------------------------\n"); printf("返回首页(请按任意键): "); scanf("%c",&d); system("cls"); fun(s); } voidfun2(structstudent*s) { chara[20],d; inti; printf("\n\n\t请输入要查询学生的学号(10001~10005): "); scanf("%s",a); for(i=0;i<5;i++) { if(! strcmp(s[i].no,a)) { printf("\n\t此学生的信息: "); printf("\n\n\t\t学号\t姓名\t专业\t年级\t性别"); printf("\n\t---------------------------------------------------"); printf("\n\n\t\t%-8s%-8s%-8s%-8d%-8s\n",s[i].no,s[i].name,s[i].spec,s[i].grade,s[i].sex); printf("\n\t---------------------------------------------------"); } if(i==4&&s[i].no! ="10005") { printf("\n\t\t查无此人! "); } } printf("\n\n返回首页(请按任意键): "); getchar(); scanf("%c",&d); system("cls"); fun(s); } voidfun3(structstudent*s) { inti,a; chard; printf("\n\n\t请输入要查询学生的班级(12~14): "); scanf("%d",&a); for(i=0;i<5;i++) { if(a==s[i].grade) { printf("\n\t此学生的信息: "); printf("\n\n\t\t学号\t姓名\t专业\t年级\t性别"); printf("\n\t---------------------------------------------------"); printf("\n\n\t\t%-8s%-8s%-8s%-8d%-8s\n",s[i].no,s[i].name,s[i].spec,s[i].grade,s[i].sex); printf("\n\t---------------------------------------------------"); } if(i==4&&s[i].grade! =a) { printf("\n\t\t查无此人! "); } } printf("\n\n返回首页(请按任意键): "); getchar(); scanf("%c",&d); system("cls"); fun(s); } voidfun4(structstudent*s) { inti; chard; printf("\n\n\t\t学号\t姓名\t专业\t年级\t性别"); printf("\n\t---------------------------------------------------"); for(i=0;i<5;i++) { printf("\n\n\t\t%-8s%-8s%-8s%-8d%-8s",s[i].no,s[i].name,s[i].spec,s[i].grade,s[i].sex); } printf("\n\t---------------------------------------------------\n"); printf("返回首页(请按任意键): "); scanf("%c",&d); getchar(); system("cls"); fun(s); } voidfun5(structstudent*s) { chara[20],d; inti; printf("\n\n\t请输入要修改学生的姓名: "); scanf("%s",a); for(i=0;i<5;i++) { if(! strcmp(s[i].name,a)) { printf("\n\t\t请输入修改学号: "); scanf("%s",s[i].no); printf("\n\t\t请输入修改专业: "); scanf("%s",s[i].spec); printf("\n\t\t请输入修改年级: "); scanf("%d",&s[i].grade); printf("\n\t\t请输入修改性别: "); scanf("%s",s[i].sex); getchar('\n'); system("cls"); } } printf("\n\n\t\t学号\t姓名\t专业\t年级\t性别"); printf("\n\t---------------------------------------------------"); for(i=0;i<5;i++) { printf("\n\n\t\t%-8s%-8s%-8s%-8d%-8s",s[i].no,s[i].name,s[i].spec,s[i].grade,s[i].sex); } printf("\n\t---------------------------------------------------\n"); printf("返回首页(请按任意键): "); scanf("%c",&d); system("cls"); fun(s); } voidfun6(structstudent*s) { chara[20],d; inti,k; printf("\n\n\t请输入要删除学生的姓名: "); scanf("%s",a); for(i=0;i<5;i++) { if(! strcmp(s[i].name,a)) { s[i]=s[i+1]; printf("\n\t此学生的信息: "); printf("\n\n\t\t学号\t姓名\t专业\t年级\t性别"); printf("\n\t---------------------------------------------------"); for(k=0;k<4;k++) { printf("\n\n\t\t%-8s%-8s%-8s%-8d%-8s\n",s[k].no,s[k].name,s[k].spec,s[k].grade,s[k].sex); } printf("\n\t---------------------------------------------------"); } if(i==4) { printf("没有此人! "); } } printf("返回首页(请按任意键): "); getchar(); scanf("%c",&d); system("cls"); fun(s); } 五.程序运行 .经编译调试后,运行程序的结果 —————————————— 1.录入学生信息 2.修改学生信息 3.删除学生信息 4.查询学生信息 5.输出学生信息 6.退出系统 ———————————————— 请选择你要的服务(按数字1~6进入): (1)输入1并按依次按Enterj键显示出 请输入学生数量: 5 请输入学生学号: 10001 请输入学生姓名: zhang 请输入学生专业: chinese 请输入学生年级: 12 填写相关数据后按Enter键出现 学号姓名专业年级性别 __________________________________________ 10001zhangchinese12male 10002wangmath13female 10003lisichemsi12male 10004mazhienglish13female 10005kukomath14male _________________________________________________________ (2)输入2并按Enter键显示出 请输入要修改学生的姓名: zhang (3)输入3并按Enter键显示出 请输入要删除学生的姓名: zhang (4)输入4并按Enter键显示出 欢迎进入查询学生系统 ———————————————————— 1.按学号查询学生系统 2.2.按班级查询学生系统 ———————————————————— 请选择你要的服务(按数字1~2进入): 按1并按Enter键显示 请输入要查询学生的学号(10001~10005): 10001 (5)输入5并按Enter键显示出 欢迎进入学生输出系统 学号姓名专业年级性别 ———————————————————— 10001zhangChinese12male 10002wangmath13female 10003lisichmsi12male 10004mazhienglish13female 10005kukomath14male ______________________________________ (6)输入6并按Enter键显示出 学生档案管理系统 —————————————————————— 1.录入学生信息 2.修改学生信息 3.删除学生信息 4.查询学生信息 5.输出学生信息 6.退出系统 —————————————————————— 请选择你要的服务(按数字1~6进入):
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序 课程设计 报告