fclose(fp); }
return(head); }
//####################################### 二十二 ############################################
//#################################输出学生基本信息##########################################
void read3(struct student *head )//从文件中输出数据 {struct student*stu; int n=0,i,j,k,l,f; system(\stu=head;
if(head==NULL) {
printf(\对不起,还没有学生的信息,请问是否输入新信息,若要请输入‘1’;否则请输入‘0’\\n\\n\ scanf(\ if(k==1) {
head=creat(); write(head); system(\
printf(\信息输入完毕,请问是否马山打开,若是请输入 1 否则输入任一数字\\n\\n\ scanf(\
if(f==1){head=out();read(head);} else {system(\ }
else {system(\}
printf(\以下是删除后所剩学生的个人基本信息以及具体选课信息\\n\printf(\**********\while(stu!=NULL) {
if(stu->Class printf(\---------\\n\ printf(\第%d位学生的信息++++++++++++++++++++++++++++++++++++\\n\ printf(\---------\\n\ printf(\①个人基本信息:\\n\printf(\printf(\班级:%-5d 学号:%-15s宿舍号码:%-11s性别:%-5s\\n 年龄:%-5d 姓名:%-15s电话号码:%-11s科 数:%-5d\\n\\n\stu->phone ,stu->subject ); for(j=0,l=1;j {printf(\----------\\n\ printf(\②选课具体信息:\printf(\第%d科####\\n\printf(\printf(\课程编号:%-20s课程名称:%-20s\\n\\n\printf(\考试成绩:%-20.1f平时成 绩:%-20.1f\\n\\n\printf(\综合成绩:%-20.1f学 分 :%-20d\\n\\n\ printf(\③考试情况(若是fail则需重修):%s\\n\printf(\if(strcmp(\ {printf(\重修次数:%-20d\\n\\n\for(i=0;i 数:%-20.1f\\n\} } }stu=stu->next; } printf(\----------\ printf(\删 除 信 息 后 还 剩 - 位 学 生 的 信 息\\n\} //################################### 二十三 #################################################### //###############################按学号查找学生信息 ############################################## void chazhao(struct student*head)//按学号查找学生信息 { struct student*stu,*p2; char xuehao[15]; char xiu[15],xiangmu[20],xinxinxi[20];//xiu gai xin xi yong int i=0,j=0,l=0; int kemu;// //char xuan='y';//xiu gai xin xi yong stu=head; printf(\请输入要查找的学生的学号:\\n\\n\ scanf(\ system(\ while(strcmp(stu->num,xuehao)!=0&&stu->next!=NULL) { p2=stu; stu=stu->next; } if( strcmp(stu->num,xuehao)==0) { //printf(\n\ printf(\①个人基本信息:\\n\printf(\ printf(\班级:%-5d 学号:%-11s宿舍号码:%-19s性别:%-5s\\n\\n 年龄:%-5d 姓名:%-11s电话号码:%-19s科 数:%-5d\\n\\n\stu->phone ,stu->subject ); for(j=0,l=1;j {printf(\----------\\n\ printf(\②选课具体信息:\printf(\第%d科####\\n\printf(\printf(\课程编号:%-19s课程名称:%-19s学 分:%-d\\n\printf(\考试成绩:%-19.1f平时成绩:%-19.1f综 合:%-.1f\\n\printf(\③考试情况(若是fail则需重修):%s\\n\printf(\if(strcmp(\ {printf(\重修次数:%-20d\\n\for(i=0;i 数:%-20.1f\\n\} } } else {printf(\对不起,没找到学号为%s的学生的信息 \\n\\n\ printf(\ ****************\\n\ printf(\学 号 为 [ %s] 的 学 生 的 信 息 输 出 完 毕!\\n\ printf(\请问是否修改个人信息,若是,请输入【是】,否则输入任一字符!\\n\ scanf(\ if(strcmp(\是\ {system(\请输入要修改的选项(注意,暂时只能修改学号、姓名\\n\\n 性别、电话号码、课程编号、课程名称):\ scanf(\ printf(\请输入新的信息:\\n\\n\ scanf(\ while(strcmp(\是\ { if(strcmp(xiangmu,\学号\修改信息成功\\n\\n\\n\ else if(strcmp(xiangmu,\姓名 \修改信息成功\\n\\n\\n\ else if(strcmp(xiangmu,\性别\修改信息成功\\n\\n\\n\ else if(strcmp(xiangmu,\电话号码 \修改信息成功\\n\\n\\n\ else if(strcmp(xiangmu,\课程编号\请选择第几课:\\n\\n\ scanf(\ {strcpy(stu->cou[kemu-1].num,xinxinxi);system(\修改信息成功\\n\\n\\n\ printf(\输入错误,修改未成功\\n\\n\ else if(strcmp(xiangmu,\课程名称\请选择第几课:\\n\\n\ scanf(\ {strcpy(stu->cou[kemu-1].name,xinxinxi);system(\修改信息成功\\n\\n\\n\ printf(\输入错误,修改未成功\\n\\n\ //{strcpy(stu->cou[j].name,xinxinxi);printf(\修改信息成功\\n\\n\\n\ else printf(\修改未成功,请检查是否按要求输入!\\n\\n\请问是否继续修改,若是若是,请输入【是】,否则输入任一字符!\\n\ scanf(\ if(strcmp(\是\ {system(\请输入要修改的选项(注意, 暂时只能修改学号、姓名\\n\\n 性别、电话号码、课程编号、课程名称):\ scanf(\ printf(\请输入新的信息:\\n\\n\\n\\n\ scanf(\} }} else return; writeshan(head);//return; head=out(); stu=head; system(\ while(strcmp(stu->num,xuehao)!=0&&stu->next!=NULL) { p2=stu; stu=stu->next; } if( strcmp(stu->num,xuehao)==0) { //printf(\n\ printf(\①个人基本信息:\\n\printf(\ printf(\班级:%-5d 学号:%-11s宿舍号码:%-19s性别:%-5s\\n\\n 年龄:%-5d 姓名:%-11s电话号码:%-19s科 数:%-5d\\n\\n\stu->phone ,stu->subject ); for(j=0,l=1;j {printf(\----------\\n\ printf(\②选课具体信息:\printf(\第%d科####\\n\printf(\printf(\课程编号:%-19s课程名称:%-19s学 分:%-d\\n\printf(\考试成绩:%-19.1f平时成绩:%-19.1f综 合:%-.1f\\n\printf(\③考试情况(若是fail则需重修):%s\\n\printf(\if(strcmp(\ {printf(\重修次数:%-20d\\n\for(i=0;i 数:%-20.1f\\n\} } } else {printf(\对不起,没找到学号为%s的学生的信息 \\n\\n\ printf(\****************\\n\ printf(\学 号 为 [ %s] 的 学 生 的 【修 改 后】 的 信 息 !\\n\ printf(\}