实用标准
getchar();
printf(\输入错误,请重新输入学生学号:\ scanf(\
} //输入学号为字符或小于0时,程序报错,提示重新输入学号
if(p1->number==0)
goto end; //当输入的学号为0时,转到末尾,结束创建链表
else {
p3=head; if(n>0) {
for(i=0;i if(p1->number!=p3->number) p3=p3->next; else { printf(\学号重复,请重输!\\n\ goto repeat1; 学号已经存在,程序报错,返回前面重新输入*/ } } } } printf(\请输入学生姓名:\ scanf(\输入学生姓名*/ printf(\请输入语文成绩(0~100):\ 入语文成绩,成绩应在0-100*/ scanf(\ while(p1->chinese<0||p1->chinese>100) { getchar(); printf(\输入错误,请重新输入语文成绩\入错误,重新输入语文成绩直到正确为止*/ scanf(\ } printf(\请输入数学成绩(0~100):\ 入数学成绩,成绩应在0-100*/ scanf(\ while(p1->mathmatic<0||p1->mathmatic>100) 文案大全 /*当输入的 /*输 /*输 /*输 实用标准 { getchar(); printf(\输入错误,请重新输入数学成绩\ /*输入错误,重新输入数学成绩直到正确为止*/ scanf(\ } printf(\请输入英语成绩(0~100):\ /*输入英语成绩,成绩应在0-100*/ scanf(\ while(p1->english<0||p1->english>100) { getchar(); printf(\输入错误,请重新输入英语成绩\ scanf(\ } /*输入错误,重新输入英语成绩直到正确为止*/ head=NULL; while(p1->number!=0) { n=n+1; if(n==1) head=p1; else p2->next=p1; p2=p1; p1=(score *)malloc(LEN); printf(\请输入学生资料,输0退出!\\n\ repeat2:printf(\请输入学生学号(学号应大于0):\ scanf(\输入学号*/ while(p1->number<0) { getchar(); printf(\输入错误,请重新输入学生学号:\ scanf(\ } /*输入学号为字符或小于0时,程序报错,提示重新输入学号*/ if(p1->number==0) goto end; /*当输入的学号为0时,转到末尾,结束创建链表*/ else { p3=head; if(n>0) { 文案大全 实用标准 for(i=0;i if(p1->number!=p3->number) p3=p3->next; else { printf(\学号重复,请重输!\\n\ goto repeat2; /*当输入的学号已经存在,程序报错,返回前面重新输入*/ } } } } printf(\请输入学生姓名:\ scanf(\输入学生姓名*/ printf(\请输入语文成绩(0~100):\ scanf(\ /*输入语文成绩,成绩应在0-100*/ while(p1->chinese<0||p1->chinese>100) { getchar(); printf(\输入错误,请重新输入语文成绩\ scanf(\ } /*输入错误,重新输入语文成绩直到正确为止*/ printf(\请输入数学成绩(0~100):\ scanf(\ /*输入数学成绩,成绩应在0-100*/ while(p1->mathmatic<0||p1->mathmatic>100) { getchar(); printf(\输入错误,请重新输入数学成绩\ scanf(\ } /*输入错误,重新输入数学成绩直到正确为止*/ printf(\请输入英语成绩(0~100):\ scanf(\ /*输入英语成绩,成绩应在0-100*/ while(p1->english<0||p1->english>100) { getchar(); printf(\输入错误,请重新输入英语成绩\ scanf(\ 文案大全 实用标准 } /*输入错误,重新输入英语成绩直到正确为止*/ } end: p1=head; p3=p1; for(i=1;i for(j=i+1;j<=n;j++) { max=p1; p1=p1->next; if(max->number>p1->number) { k=max->number; max->number=p1->number; p1->number=k; 中的学号值,使得学号大者移到后面的结点中*/ strcpy(t,max->name); strcpy(max->name,p1->name); strcpy(p1->name,t); 结点中的姓名,使之与学号相匹配*/ fen=max->chinese; max->chinese=p1->chinese; p1->chinese=fen; 中的语文成绩,使之与学号相匹配*/ fen=max->mathmatic; max->mathmatic=p1->mathmatic; p1->mathmatic=fen; 中的数学成绩,使之与学号相匹配*/ fen=max->english; max->english=p1->english; p1->english=fen; 中的英语成绩,使之与学号相匹配*/ } } max=head;p1=head; 指向链表头*/ } p2->next=NULL; printf(\输入的学生数为:%d个!\\n\ return(head); } 文案大全 /*交换前后结点 /*交换前后/*交换前后结点/*交换前后结点/*交换前后结点/*重新使max,p/*链表结尾*/ 实用标准 /*==========显示数据==========*/ /*函数print,功能:显示学生成绩*/ void print(score *head) { score *p; if(head==NULL) {printf(\没有任何学生资料!\\n\ else { printf(\ printf(\ printf(\学号\\t|姓名\\t|语文\\t|数学\\t|英语\\t|\\n\ printf(\/*打印表格域*/ p=head; do { printf(\e,p->mathmatic,p->english); printf(\ /*打印表格域*/ p=p->next; }while (p!=NULL); } } /*==========添加学生数据==========*/ /*函数add,功能:追加学生资料,并且将所有学生资料按学号排序*/ score *add(score *head,score *stu) { score *p0,*p1,*p2,*p3,*max; int i,j; float fen; char t[10]; p3=stu=(score *)malloc(LEN); /*开辟一个新单元*/ printf(\输入要增加的学生的资料!\ repeat4: printf(\请输入学生学号(学号应大于0):\ scanf(\ /*输入学号,学号应大于0*/ while(stu->number<0) 文案大全