C学籍管理系统.docx
- 文档编号:29145897
- 上传时间:2023-07-20
- 格式:DOCX
- 页数:30
- 大小:20.11KB
C学籍管理系统.docx
《C学籍管理系统.docx》由会员分享,可在线阅读,更多相关《C学籍管理系统.docx(30页珍藏版)》请在冰豆网上搜索。
C学籍管理系统
C++学生学籍管理系统
1、基本要求:
为方便管理一个班同学的学籍,编写一个学籍管理系统软件。
系统记录必须包括学生姓名、学号、数学、物理、化学、英语、网络等课程成绩。
2、基本管理功能:
(1)添加:
增加一个同学的记录到管理系统中。
(2)查询:
可以根据姓名或学号查找某人的相关信息,若找到则显示其信息。
(3)修改:
在管理系统中修改一个同学的记录。
(4)保存:
将所有学生学籍信息保存在一个文件中(数据库文件或普通的文本文件)。
(5)读取:
从文件中读取已保存了数据。
(6)删除:
从管理系统中删除一条记录。
(7)恢复:
能恢复被删除的记录。
(8)统计:
(A)计算各门课程全班平均成绩及总成绩;(B)统计其课程全班得:
100分、90~99分、80~89分、70~79分、60~69分、59分以下学生人数及全班总人数的百分比;(C)以表格形式打印全部学生的平均成绩(包括各课总的平均成绩)。
(9)其他:
可以根据自己的思路设计其他功能。
PS:
我们报告是手写的,所以报告没有弄上来,不过源程序大家可以看一下,下面是运行的界面
剩下的功能大家自己试吧,这里就不截图了。
源程序:
(头文件#include"stdafx.h"和主函数intmain(intargc,char*argv[])是建工程时自带的,把之前的清掉后直接复制即可)
#include"stdafx.h"
#include
#include
#include
#include
#include
#include
#include
usingnamespacestd;
intn=0,u=0;
intnumber[5][6]={{0},{0},{0},{0},{0}};//各门学科分段成绩的人数
doublepoint[5][6]={{0},{0},{0},{0},{0}};
doubleeva[5]={0,0,0,0,0};
stringfind_name;
stringfind_num;
intp;
voidsearch(string);
voidsearch(int);
voidcunqu_data();/*存取文件*/
voidsave_data();/*保存文件*/
voidread_data();/*读取文件*/
voidrenew_data();/*删除恢复*/
voiddelete_data(intm);/*删除记录*/
voidrecover_data();/*恢复记录*/
voidset_eva2();/*课程的平均成绩*/
voidput_result1();
voidput_result2();
voidput_result3();
classStudent/*定义一个Student类*/
{public:
Student();/*构造函数*/
voidset_eva();
friendvoidset_massage(intm,Studentj[]);/*友元函数*/
friendvoidadd_massage(intm,Studentj[]);/*友元函数*/
friendvoidput_massage(intm,Studentj[]);
friendvoidchange_data(intm,Studentj[]);/*修改学生信息*/
friendvoidsearch_data();/*查找学生信息*/
friendvoidsearch_name(stringname);
friendvoidsearch_num(stringnum);
friendvoidset_number();
friendvoidset_point();
friendvoidsave_data();/*保存文件*/
friendvoidread_data();/*读取文件*/
friendvoiddelete_data(intm);/*删除记录*/
friendvoidrecover_data();/*恢复记录*/
friendvoidset_eva2();/*课程的平均成绩*/
friendvoidput_result1();
private:
stringname;/*姓名*/
stringnum;/*学号*/
stringsex;/*性别*/
doubleeva;/*学习水平*/
doubleshuxue;/*数学成绩*/
doublewuli;/*物理成绩*/
doublehuaxue;/*化学成绩*/
doubleyingyu;/*英语成绩*/
doublewangluo;/*网络成绩*/
}stud[200],studl[200];
Student:
:
Student()/*定义构造函数*/
{name="wu";
num="wu";
sex="wu";
shuxue=0;
wuli=0;
huaxue=0;
yingyu=0;
wangluo=0;
}
voidStudent:
:
set_eva()//计算平均成绩
{eva=(shuxue+wuli+huaxue+yingyu+wangluo)/5;
}
voidset_massage(intm,Studentj[])
{inti;
for(i=0;i {cout<<"输入第"< cout<<"姓名学号性别数学成绩物理成绩化学成绩英语成绩网络成绩"< cin>>j[i].name>>j[i].num>>j[i].sex>>j[i].shuxue>>j[i].wuli>>j[i].huaxue>>j[i].yingyu>>j[i].wangluo; cout<<'\n'; system("cls"); }} voidadd_massage(intm,Studentj[])//增加学生信息 {inti; for(i=n;i {cout<<"输入第"< cout<<"姓名学号性别数学成绩物理成绩化学成绩英语成绩网络成绩"< cin>>j[i].name>>j[i].num>>j[i].sex>>j[i].shuxue>>j[i].wuli>>j[i].huaxue>>j[i].yingyu>>j[i].wangluo; system("cls"); } n=n+m;} voidchange_data(intm,Studentj[])//修改学生信息 {if(m==0||m>n) {cout<<"输入错误! "< else { cout< cout<<"输入该同学的新学籍信息"< cout<<"______________________________"< cout<<"姓名学号性别数学成绩物理成绩化学成绩英语成绩网络成绩"< cin>>j[m-1].name>>j[m-1].num>>j[m-1].sex>>j[m-1].shuxue>>j[m-1].wuli>>j[m-1].huaxue>>j[m-1].yingyu>>j[m-1].wangluo; system("cls"); cout< "< } voidput_massage(intm,Studentj[]) {inti; cout<<"________________________________________________________________"< cout<<"|序号|姓名|学号|性别|数学|物理|化学|英语|网络|"< cout<<"|----|--------|----------|----|----|----|----|----|----|"< for(i=0;i { cout<<"|";cout<<""< : left)< : fixed)< cout<<""< : left)< : fixed)< cout< : left)< : fixed)< cout<<""< : left)< : fixed)< cout<<""< : left)< : fixed)< cout<<""< : left)< : fixed)< cout<<""< : left)< : fixed)< cout<<""< : left)< : fixed)< cout<<""< : left)< : fixed)< cout<<'\n';} cout<<"|____|________|__________|____|____|____|____|____|____|"< } voidsearch_data()//查找功能 {chara; for(a='0';a=='0'||a! ='4';) {system("cls"); cout<<"1.按姓名查找"< cin>>a; system("cls"); switch(a) {case'1': cout<<"输入您需要查找的学生姓名: ";cin>>find_name;search_name(find_name);break; case'2': cout<<"输入您需要查找的学号: ";cin>>find_num;search_num(find_num);break; case'3': cout< cout<<"学生学籍信息"< put_massage(n,stud);getch();break; case'4': break; default: cout< 按任意键返回。 "< }} } voidsearch_name(stringname)//按姓名查找 {inti; boolflag=false; for(i=0;i if(stud[i].name==name) {cout<<"________________________________________________________________"< cout<<"|序号|姓名|学号|性别|数学|物理|化学|英语|网络|"< cout<<"|----|--------|----------|----|----|----|----|----|----|"< cout<<"|";cout<<""< : left)< cout<<""< : left)< cout< : left)< cout<<""< : left)< cout<<""< : left)< cout<<""< : left)< cout<<""< : left)< cout<<""< : left)< cout<<""< : left)< cout<<'\n'; cout<<"|____|________|__________|____|____|____|____|____|____|"< flag=true; break; } if(flag==false) cout<<"对不起,暂无此学生信息"; getch();} voidsearch_num(stringnum)//按学号查找 {inti; boolflag=false; for(i=0;i if(stud[i].num==num) {cout<<"________________________________________________________________"< cout<<"|序号|姓名|学号|性别|数学|物理|化学|英语|网络|"< cout<<"|----|--------|----------|----|----|----|----|----|----|"< cout<<"|";cout<<""< : left)< cout<<""< : left)< cout< : left)< cout<<""< : left)< cout<<""< : left)< cout<<""< : left)< cout<<""< : left)< cout<<""< : left)< cout<<""< : left)< cout<<'\n'; cout<<"|____|________|__________|____|____|____|____|____|____|"< flag=true; break; } if(flag==false) cout<<"对不起,暂无此学生信息"; getch();} voidset_number()//number[][]开始 {inte,f,i,t; for(e=0,f=0,t=0,i=0;i {if(stud[i].shuxue==100) t++; } number[e][f]=t; for(e=1,f=0,t=0,i=0;i {if(stud[i].wuli==100) t++; } number[e][f]=t; for(e=2,f=0,t=0,i=0;i {if(stud[i].huaxue==100) t++; } number[e][f]=t; for(e=3,f=0,t=0,i=0;i {if(stud[i].yingyu==100) t++; } number[e][f]=t; for(e=4,f=0,t=0,i=0;i {if(stud[i].wangluo==100) t++; } number[e][f]=t; for(e=0,f=1,t=0,i=0;i {if(stud[i].shuxue>=90&&stud[i].shuxue<=99) t++; } number[e][f]=t; for(e=1,f=1,t=0,i=0;i {if(stud[i].wuli>=90&&stud[i].wuli<=99) t++; } number[e][f]=t; for(e=2,f=1,t=0,i=0;i {if(stud[i].huaxue>=90&&stud[i].huaxue<=99) t++; } number[e][f]=t; for(e=3,f=1,t=0,i=0;i {if(stud[i].yingyu>=90&&stud[i].yingyu<=99) t++; } number[e][f]=t; for(e=4,f=1,t=0,i=0;i {if(stud[i].wangluo>=90&&stud[i].wangluo<=99) t++; } number[e][f]=t; for(e=0,f=2,t=0,i=0;i {if(stud[i].shuxue>=80&&stud[i].shuxue<=89) t++; } number[e][f]=t; for(e=1,f=2,t=0,i=0;i {if(stud[i].wuli>=80&&stud[i].wuli<=89) t++; } number[e][f]=t; for(e=2,f=2,t=0,i=0;i {if(stud[i].huaxue>=80&&stud[i].huaxue<=89) t++; } number[e][f]=t; for(e=3,f=2,t=0,i=0;i {if(stud[i].yingyu>=80&&stud[i].yingyu<=89) t++; } number[e][f]=t; for(e=4,f=2,t=0,i=0;i {if(stud[i].wangluo>=80&&stud[i].wangluo<=89) t++; } number[e][f]=t; for(e=0,f=3,t=0,i=0;i {if(stud[i].shuxue>=90&&stud[i].shuxue<=99) t++; } number[e][f]=t; for(e=1,f=3,t=0,i=0;i {if(stud[i].wuli>=70&&stud[i].wuli<=79) t++; } number[e][f]=t; for(e=2,f=3,t=0,i=0;i {if(stud[i].huaxue>=70&&stud[i].huaxue<=79) t+
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学籍 管理 系统
![提示](https://static.bdocx.com/images/bang_tan.gif)