|
>next; if(q == NULL) { printf("\n\n"); } } return 0; } p1 = p1->next; } printf("\n◎数据库中不存在您要查询的数据 ~~~"); printf("\n\n"); return 0; } /*【2-4】模糊查询*/ int Print_Inquire_Fuzze() { //TODO:根据关键字查询 void menu_print_out(); Student *p1 = student->next; char find[20]; int m = 0; printf("◎请输入您需要查询的关键字:"); scanf("%s",find); while (p1 != NULL) { if(strstr(p1->num,find) != 0 || strstr(p1->name,find) != 0 || strstr(p1->sex,find) != 0 || strstr(p1->dept,find) != 0) { menu_print_out(); m = 1; printf("%s\t%s\t%s\t%d\t%s ",p1->num,p1->name,p1->sex,p1->age,p1->dept); Course *q = p1->headCourse->next; while (q!=NULL) { printf("%s: %d ",q->name,q->grade); q = q->next; if(q == NULL) { printf("\n\n"); } } } p1 = p1->next; } if(m == 0) { printf("\n◎数据库中不存在您要查询的数据 ~~~"); printf("\n\n"); } return 0; } /*【2-5】全部课程*/ int Print_Course_All() { void course_print_out(); Course *pc = course->next; course_print_out(); while (pc != NULL) { printf("%d\t%s\t%d\n",pc->id,pc->name,pc->credit); pc = pc->next; } return 0; } /*【3-1】修改数据-删除*/ int Delete() { Student *p1, *p2, *head; char stu_num[10]; printf("\n◎请输入您要删除的学号信息:"); scanf("%s",stu_num); p1 = student; p2 = p1->next; while (p2 != NULL) { if(strcmp(p2->num,stu_num) == 0) { p1->next = p2->next; Course *pc1, *temp; pc1 = p2->headCourse; while (pc1 != NULL) { temp = pc1; pc1 = pc1->next; free(temp); } free(p2); printf("\n\n◎已成功删除指定数据◎\n"); return 0; } p2 = p2->next; p1 = p1->next; } printf("数据库中不存在您要修改的数据 ~~~"); printf("\n\n"); return 0; } /*【3-2】修改数据-修改基本信息*/ int Ament_N_S_A() { Student *p1 = student->next; char stu_num[10]; printf("\n◎请输入您要修改的学号信息:"); scanf("%s",stu_num); while (p1 != NULL) { if(strcmp(p1->num,stu_num) == 0) { printf("------------------\n"); printf("姓名 性别 年龄 \n"); printf("------------------\n"); scanf("%s%s%d",p1->name,p1->sex,&p1->age); printf("\n\n◎已成功修改指定学生基本信息◎\n"); return 0; } p1 = p1->next; } printf("数据库中不存在您要修改的数据 ~~~"); printf("\n\n"); return 0; } /*【3-3】修改数据-修改成绩*/ int Ament_Grade() { Student *p1 = student->next; char stu_num[10]; printf("\n◎请输入您要修改的学号信息:"); scanf("%s",stu_num); while (p1 != NULL) { if(strcmp(p1->num,stu_num) == 0) { printf("可以修改的成绩: "); Course *cou[10]; Course *pc1 = p1->headCourse->next; int i = 0, length = 0; while (pc1 != NULL) { cou[i] = pc1; printf("%s ",pc1->name); i++; length++; pc1 = pc1->next; } printf("\n"); printf("请输入各科新成绩: "); for(i = 0; i < length; i++) { scanf("%d",&cou[i]->grade); } printf("\n\n◎已成功修改指定学生成绩◎\n"); return 0; } p1 = p1->next; } printf("数据库中不存在您要修改的数据 ~~~"); printf("\n\n"); return 0; } /*输出提示框*/ void menu_print_out() { printf("\n--------------------------------------------------------------------------------\n"); printf("学号 姓名 性别 年龄 专业 各科成绩....\n"); printf("--------------------------------------------------------------------------------\n"); } void course_print_out() { printf("\n---------------------------------\n"); printf("编号 课程名称 学分\n"); printf("---------------------------------\n"); } /*主菜单*/ void menu(void) { void ReadBack(); void menu_add(void); void menu_inquire(void); void menu_amend(void); printf(" \n"); printf(" 学生管理
系统V1.0 \n"); printf(" \n"); printf(" 【1】添加数据 【3】修改数据 \n"); printf(" \n"); printf(" 【2】查询数据 【4】退出系统 \n"); printf(" \n"); printf(" \n"); printf("◎请输入功能前的序号进入相应的工具:【 】\b\b"); int a = 0; a = getchar(); while(a!='1'&&a!='2'&&a!='3'&&a!='4') { printf("error! please input the right number! |