c学生成绩管理系统文档.docx
- 文档编号:9683188
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:25
- 大小:19.87KB
c学生成绩管理系统文档.docx
《c学生成绩管理系统文档.docx》由会员分享,可在线阅读,更多相关《c学生成绩管理系统文档.docx(25页珍藏版)》请在冰豆网上搜索。
c学生成绩管理系统文档
//Stu,h文件
#include
#ifndefSTU_H
#defineSTU_H
#ifdefDLL_FILE
class__declspec(dllexport)Stu//导出类Stu
#else
class__declspec(dllimport)Stu//导入类Stu
#endif
{
public:
friendvoidInput(Stustud[]);
friendvoidStatistic(Stustud[]);
friendvoidLookup(Stustud[]);
friendvoidModify(Stustud[]);
friendvoidDelete(Stustud[]);
friendvoidOutput(Stustud[]);
friendvoidSort(Stustud[]);
friendvoidInsert(Stustud[]);
friendvoidWrite(Stustud[],intn);
friendvoidPass(Stustud[]);
friendvoidUnpass(Stustud[]);
friendintRead(Stustud[]);
friendintgaicuo(Stustud[],char*a);
private:
charclass_0[20];
intnum;
charname[10];
doubleintroduction;
doublec_program;
doublebasis;
doubleenglish;
doublemath;
doublesport;
doublepolity;
doubleaverage;
doublezongping;
doubleordinary;
intorder;
}stud[100];
#endif
//call.cpp文件
#include
#include
#include
#include
#include
#include
#include"test.h"
#include"Stu.h"
intmenu()/*菜单函数*/
{
intc;
system("cls");/*运行前清屏*/
cout<<"*************************************************************\n"< cout<<"-----------------<<欢迎您使用学生成绩管理系统>>--------------\n"< cout<<"*******************************************\n\n"< cout<<"*【1】输入学生成绩*"< cout<<"*【2】显示统计数据*"< cout<<"*【3】查找学生成绩*"< cout<<"*【4】修改学生成绩*"< cout<<"*【5】删除学生成绩*"< cout<<"*【6】插入学生成绩*"< cout<<"*【7】按总评分降序排列*"< cout<<"*【8】显示全部学生成绩*"< cout<<"*【9】显示学生九十分以上成绩*"< cout<<"*【10】显示学生不及格成绩*"< cout<<"*【0】退出本系统*"< cout<<"***************************************************************"< cout<<"请你选择操作(0-10): "< cin>>c;/*读入选择*/ returnc;/*返回选择*/ } intmain(intargc,char*argv[]) { for(;;) { switch(menu())/*选择判断*/ { case1: Input(stud);/*输入学生成绩*/ break; case2: Statistic(stud);/*输出学生统计数据*/ break; case3: Lookup(stud);/*查找学生成绩*/ cout<<"\t\t\t"; system("pause"); break; case4: Modify(stud);/*修改学生成绩*/ cout<<"\t\t\t"; system("pause"); break; case5: Delete(stud);/*按学号查找,删除学生信息*/ cout<<"\t\t\t"; system("pause"); break; case6: Insert(stud);/*增加学生成绩*/ cout<<"\t\t\t"; system("pause"); break; case7: Sort(stud);/*按总评分对成绩记录项进行降序排序*/ cout<<"\t\t\t"; system("pause"); break; case8: Output(stud);/*显示全部学生成绩*/ cout<<"\t\t\t"; system("pause"); break; case9: Pass(stud); cout<<"\t\t\t"; system("pause"); break; case10: Unpass(stud); cout<<"\t\t\t"; system("pause"); break; case0: cout< cout<<"\t\t\t"; system("pause"); exit(0); } } return0; } //test.h文件 #ifndefDLL_FILE #defineDLL_FILE #endif #include"Stu.h" #include #include #include #include #include #include voidWrite(Stustud[],intn)//向文件中写入数据 { fstreammyFile; myFile.open("E: \student.txt",ios: : out|ios: : binary); if(! myFile) { cout<<"student.txtcan'topen! "< abort(); } intcount=n; myFile< for(inti=0;i<=count;i++) { myFile< < <<""< } myFile.close(); } intRead(Stustud[])//从文件中读数据 { fstreammyFile; myFile.open("E: \student.txt",ios: : in|ios: : binary); if(! myFile) { cout<<"student.txtcan'topen! "< abort(); } intcount; myFile.seekg(0); myFile>>count; for(inti=0;i<=count;i++) { myFile>>stud[i].class_0>>stud[i].num>>stud[i].name>>stud[i].introduction>>stud[i].c_program>>stud[i].basis >>stud[i].english>>stud[i].math>>stud[i].sport>>stud[i].polity>>stud[i].zongping>>stud[i].average>>stud[i].ordinary; } myFile.close(); returncount; } voidInput(Stustud[])//---------------输入学生成绩 { system("cls");/*运行前清屏*/ char*s[]={"计算机导论成绩: ","C++程序设计成绩: ","计算机组成原理成绩: ","大学英语成绩: ","高等数学成绩: ", "大学体育成绩: ","马克思主义成绩: "}; inti=0; intj=0; intflag; charsign; cout< while(sign! ='n'&&sign! ='N')/*判断*/ { cout<<"班级: ";/*交互输入*/ cin>>stud[i].class_0; loop: cout<<"学号: "; cin>>stud[i].num; intc=0; while(c { c++; if(stud[i].num==stud[i-c].num) { cout<<"你输入的学号已经存在! 请重新输入。 "< gotoloop; } } cout<<"姓名: "; cin>>stud[i].name; do{ cout<<"请输入"< "; flag=0; loop1: char*w,d[15]; w=d; cin>>w; intk=strlen(w); doublechengji=0; for(inth=0;h chengji=chengji+(*(w+h)-48)*pow(10,k-h-1); if(gaicuo(stud,w)==1) {cout<<"输入错误,请重新输入"< gotoloop1;} elseif(chengji>100||chengji<1) cout<<"对不起,请输入1-100之间的数字! ! \n"; else switch(j) { case0: stud[i].introduction=chengji;break; case1: stud[i].c_program=chengji;break; case2: stud[i].basis=chengji;break; case3: stud[i].english=chengji;break; case4: stud[i].math=chengji;break; case5: stud[i].sport=chengji;break; case6: stud[i].polity=chengji; flag=1; } j++; }while(flag==0); cout<<"平时成绩"; cin>>stud[i].ordinary; cout< stud[i].average=(stud[i].introduction+stud[i].c_program+stud[i].basis+stud[i].english+stud[i].math+stud[i].sport+stud[i].polity)/7; stud[i].zongping=stud[i].ordinary*0.2+stud[i].average*0.8; cout<<"总评成绩"< cout<<"====>提示: 是否继续写入学生成绩? (Y/N)"; cin>>sign;/*输入判断*/ i++; } Write(stud,i);//写入文件 } voidStatistic(Stustud[])//---------------统计学生数据 { system("cls");/*运行前清屏*/ intn=Read(stud); cout< cout<<"班级"<<"\t"<<"学号"<<"\t"<<"姓名"<<"\t"<<"总评分"< for(inti=0;i cout< system("pause"); } voidLookup(Stustud[])//---------------查找学生成绩 { system("cls");/*运行前清屏*/ intn=Read(stud); ints; inti=0; cout< cout<<"请输入需要查找学生的学号: "< cin>>s; while((stud[i].num-s)! =0&&i if(i==n) { cout<<"=====>提示: 对不起,无法找到该学生的信息! "< } else { cout<<"---------------------------"< cout<<"班级: "< cout<<"学号: "< cout<<"姓名: "< cout<<"计算机导论技术: "< cout<<"C++程序设计: "< cout<<"计算机组成原理: "< cout<<"大学英语: "< cout<<"高等数学: "< cout<<"大学体育: "< cout<<"马克思主义政治经济学: "< cout<<"总评分: "< } } voidModify(Stustud[])//---------------修改学生成绩 { system("cls");/*运行前清屏*/ intn=Read(stud); ints; inti=0; cout< cout<<"请输入需要修改成绩学生的学号: "< cin>>s; while((stud[i].num-s)! =0&&i if(i==n) { cout<<"=====>提示: 对不起,无该学生的成绩……"< } else { cout<<"----------该学生的信息----------"< cout<<"班级"<<"\t"<<"学号"<<"\t"<<"姓名"<<"\t"<<"计算机导论"<<"\t"<<"c++"<<"\t"<<"计算机组成原理" <<"\t"<<"英语"<<"\t"<<"数学"<<"\t"<<"体育"<<"\t"<<"政治"<<"\t"<<"平均分"< cout<<"---------------------------------"< cout< < < cout<<"请重新输入该学生的信息"< cout<<"班级: "< cin>>stud[i].class_0; cout<<"学号: "< cin>>stud[i].num; cout<<"姓名: "< cin>>stud[i].name; cout<<"计算机导论成绩: "< cin>>stud[i].introduction; cout<<"C++程序设计成绩: "< cin>>stud[i].c_program; cout<<"计算机组成原理成绩: "< cin>>stud[i].basis; cout<<"大学英语成绩: "< cin>>stud[i].english; cout<<"高等数学成绩: "< cin>>stud[i].math; cout<<"大学体育成绩: "< cin>>stud[i].sport; cout<<"马克思主义成绩: "< cin>>stud[i].polity; cout<<"平时分: "< cin>>stud[i].ordinary; stud[i].average=(stud[i].introduction+stud[i].c_program+stud[i].basis+stud[i].english+stud[i].math+stud[i].sport+stud[i].polity)/7; cout<<"总评成绩"< charc; cout<<"是否保存数据? (y/n)"< cin>>c; if(c! ='n'&&c! ='N') Write(stud,n); } } voidDelete(Stustud[])//---------------按学号查找,删除学生信息 { system("cls");/*运行前清屏*/ intn=Read(stud); ints; inti=0,j; cout< cout<<"请输入需要删除学生的学号: "< cin>>s; while((stud[i].num-s)! =0&&i if(i==n) { cout<<"====>提示: 对不起,无法找到该学生……"< } else { for(j=i;j { strcpy(stud[j].class_0,stud[j+1].class_0); stud[j].num=stud[j+1].num; strcpy(stud[j].name,stud[j+1].name); stud[j].introduction=stud[j+1].introduction; stud[j].c_program=stud[j+1].c_program; stud[j].basis=stud[j+1].basis; stud[j].english=stud[j+1].english; stud[j].math=stud[j+1].math; stud[j].sport=stud[j+1].sport; stud[j].po
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生成绩管理系统文档 学生 成绩管理系统 文档