c大作业学生信息管理系统源代码
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
c大作业学生信息管理系统源代码
学生信息管理系统源代码:
#include
#include
#include
#include
#include
#include
struct student
{
char num[30]; int maths;
char name[30]; int chinese;
char clas[30]; int english;
int total; float average;
student *next;
};
//◆1(1)
void createlist(student * & head) //学生成绩文件导入功能(用链表储存)
{
char t[80],num0[30],name0[30],clas0[30];
int chinese0,maths0,english0;
student *s,*p;
ifstream instuf("student-score.txt",ios::in);
if (!instuf) {cerr<<"file could not be open."< instuf.getline(t,80); while (instuf>>num0>>name0>>clas0>>chinese0>>maths0>>english0) { s=new student; strcpy(s->num,num0);strcpy(s->name,name0);strcpy(s- >clas,clas0); s->chinese=chinese0;s->maths=maths0;s->english=english0; s->total=s->chinese+s->maths+s->english; s->average=float(s->total)/3; if (head==NULL) head=s; else p->next=s; p=s; } p->next=NULL; instuf.close(); } //◆1(2) void showlist(student *head) //学生成绩信息显示功能(遍历链表) { int n=1; cout<<"学号姓名班级语文数学英语总分均分序号 "; while (head) { cout< < >total<<'\t'< n=n+1; head=head->next; } } //◆2 void charu(student *head) //学生成绩信息插入功能(链表尾部插入学生成绩信息) { student *s,*p,*q; int n,i; cout<<"请输入需要【插入】的学生成绩信息的数量: "; cin>>n; cout<<"请输入需插入的学生成绩信息(每人一行):"< cout<<"学号姓名班级语文数学英语"< p=head; while (p) { q=p; p=p->next; } for (i=1;i<=n;i++) { s=new student; cin>>s->num>>s->name>>s->clas>>s->chinese>>s->maths>>s->english; s->total=s->chinese+s->maths+s->english; s- >average=float(s->total)/3; q->next =s; q=s; } q->next=NULL; } //◆3 void shanchu(student * & head) //学生成绩信息删除功能 { student *p,*q; char a[30]; int n,i,b=1; cout<<"请输入需【删除】的学生成绩信息的数量: "; cin>>n; cout<<"请输入需要删除的学生的学号或姓名:"< for (i=1;i<=n;i++) { cin>>a; if ((strcmp(head->num,a)==0)||(strcmp(head->name,a)==0)) {