c语言学生管理系统之学生信息删除

void DeleteStudentInformation(LINK head , long w) //删除学生 { LINK p = (LINK)malloc(sizeof(NODE)); LINK m = (LINK)malloc(sizeof(NODE)); p = head->next ; m = head; int flag = 0; char choice ; int j = 0 ; while(p) { if(p->number == w) { flag = 1; printf("该学生信息为 "); //打印想删除的学生信息

printf("此学生学号:%ld ",p->number); printf("此学生姓名:%s ",p->name); printf("此学生性别:%s ",p->sex); printf("此学生出生年月日:%d.%d.%d ",p->year,p->month,p->day); printf("此学生年龄:%d ",p->old); printf("此学生数学成绩:%f ",p->score[0]); printf("此学生语文成绩:%f ",p->score[1]); printf("此学生英语成绩:%f ",p->score[2]); printf("此学生三科平均成绩:%f",p->average); printf("您确定要删除吗?是,请输入‘Y’,否,请输入‘N’ "); //再次确认是否删除 fflush(stdin); choice = getchar(); if(choice == N) { printf("您选择了否,即将返回菜单 "); getchar(); break; } m->next = p->next ; if(p->next == NULL) { m->next = NULL; } else { m->next = p->next ; } free(p); for(p= head->next ; p!=NULL; p=p->next) { ++j; } printf("删除后学生人数为%d ",j); //确认是否系统出错未删除学生 break; } p = p->next ; m = m->next ; } if(flag == 0) //判断该学生是否存在 { printf("该学生不存在 "); }

}

经验分享 程序员 微信小程序 职场和发展