}
fclose(fp1); }
else if(strcmp(c,\ strcpy(e.cNo,\
strcpy(e.cname,\微观经济\
if(!(fp1=fopen(\ cout<<\打开文件错误\ exit(0);} else{
while(!feof(fp1))
if((fscanf(fp1,\
for(int j=0;j
if((strcmp(e.sNo,p1[j].No))==0&&(isExitcNo(p1[j],e.cNo)==0)) EnQueue(p1[j],e); } }
fclose(fp1); }
//else
// cout<<\请输入正确的课程代号\ }while((strcmp(c,\
break; case 4:
if(i==0)
cout<<\信息为空,请先创建基本信息\ else{
for(int j=0;j
if(!(p1[j].front->next))
cout<<\成绩为空,请先输入成绩\ else{
CalculateAve(p1[j]); cout< break; case 5: if(i==0) cout<<\信息为空,请先创建信息\ else{ int a; do{ system(\ cout<<\ cout<<\按学号查询\ cout<<\按姓名查询\ cout<<\返回上层\ cout<<\ cin>>a; system(\ char r[10]; if(a==1) do{ strcpy(r,\ int flag=0; cout<<\请输入学号,返回上层请按0\ cin>>r; for(int j=0;j if(strcmp(p1[j].No,r)==0){ cout< cout<<\查无此人,请重新输入\ }while(strcmp(r,\ else if(a==2) do{ strcpy(r,\ int flag=0; cout<<\请输入姓名,返回上层请按0\ cin>>r; for(int j=0;j if(strcmp(p1[j].name,r)==0){ cout< cout<<\查无此人,请重新输入\ }while(strcmp(r,\ else if(a==0) break; else{ cout<<\请重新选择\ system(\ }while(1);} break; case 6: if(i==0) cout<<\信息为空,请先创建基本信息\ else{ int r; do{ cout<<\ cout<<\按学号排序\ cout<<\按平均成绩排序\ cout<<\返回上层\ cout<<\ cin>>r; if(r==1){ for(int k=1;k int a,b; sscanf(p1[k].No,\ student temp=p1[k];//temp标记为未排序第一个元素 int j=k; 元素 sscanf(p1[j-1].No,\ while(j>=0&&b>a) { p1[j]=p1[j-1]; j--; sscanf(p1[j-1].No,\ } p1[j]=temp; } for(int j=0;j cout< else if(r==2){ for(int k=1;k int a; a=p1[k].average; student temp=p1[k];//temp标记为未排序第一个 int j; for(j=k;j>0&&p1[j-1].average>temp.average;j--) { p1[j]=p1[j-1]; } p1[j]=temp; } for(int j=0;j cout< if(!(p1[j].front->next)) cout<<\成绩信息为空,请输入该学生成绩\ else{ if(p1[j].average==0) cout<<\请先计算平均成绩\ else cout< else if(r==0) break; else{ cout<<\请重新选择\ system(\ }while(1);} break; case 7:{ int a=-1; do{ cout << \请输入学号\ while(1){ cin >> p1[i].No; if(isNo(p1[i].No)) break; else cout<<\格式错误,请重新输入\ } if(isExistNo(p1,p1[i].No,i)){ cout<<\该学号已存在\ continue;} cout << \请输入姓名\ cin >> p1[i].name; cout << \请输入性别\ while(1){ cin >> p1[i].gender; if(isGender(p1[i].gender)==1) break; else cout<<\格式错误,请重新输入\ } cout << \请输入出生年月\ while(1){ cin >> p1[i].brithday; if(isNo(p1[i].brithday)) break; else cout<<\格式错误,请重新输入\ }
学生档案管理系统c语言



