1、 《C语言项目设计》 课程设计题目: 学校管理信息系统 学生学号: 学生姓名: 指导老师: 一、项目设计目的及功能: 本系统由C语言编写而成,主要实现对学校信息的管理。系统主要内容为学校编号、学校名称(河海大学)、学校专业总数、学校在校学生人数、建校时间(年月日),可实现从外部读入数据、数据输入、添加、查询(按编号查询,按名称查询)、删除(按编号删除,按名称删除,删除全部)、排序以及对所输入的数据的保存等功能。 二、运行结果截图: 程序运行主界面: 增加学校信息: 删除学校信息: 按编号删除:
2、
按名称删除:
删除全部:
修改学校信息:
按编号修改:
按名称修改:
查询学校信息:
按编号查询:
按名称查询:
排序:
三、程序代码:
程序一(结构体数组+文件):
#include
3、); int idsearch(); int namesearch(); void addone(); void deleteone_id(); void deleteone_name(); void deleteall(); void paixu(); void saveall(); typedef struct _school { char id[16]; char name[32]; int zynum; __int64 stnum; int year; int month; int day; }School; School xx
4、[N]; int main() { i=0; showmenu(); return 0; } void showmenu() { int num1,num2,num3,num4,num5,num6,num7; printf ("***********************************\n"); printf ("* 学校信息管理系统 *\n"); printf ("***********************************\n"); printf ("* 1.读入
5、已有信息 *\n"); printf ("* 2.列出所有学校 *\n"); printf ("* 3.查询指定学校 *\n"); printf ("* 4.添加记录 *\n"); printf ("* 5.删除记录 *\n"); printf ("* 6.重新排序 *\n"); printf ("* 7.保存信息
6、 *\n"); printf ("* 8.修改信息 *\n"); printf ("* 0.退出系统 *\n"); printf ("***********************************\n"); printf ("请选择:"); scanf("%d",&num1); printf("\n"); switch (num1) { case 1:read();printf("按任意键返回主菜单!\n");getch();system("
7、cls");showmenu ();break; case 2:printall();printf("按任意键返回主菜单!\n");getch();system("cls");showmenu ();break; case 3: if(i==0) { printf("没有学校可以查询!\n"); Sleep(2000); system("cls"); showme
8、nu(); } else { LOOP: system("cls"); printf ("**********************\n"); printf ("* 1.按编号查询 *\n"); printf ("* 2.按名称查询 *\n");
9、 printf ("**********************\n"); printf ("请选择:"); scanf ("%d",&num2); printf("\n"); if (num2==1) { idsearch(); printf("按任意键返
10、回主菜单!\n"); getch(); system("cls"); showmenu(); } else if (num2==2) { namesearch(); printf("按任意键返回主菜单!\n")
11、 getch(); system("cls"); showmenu(); } else { printf ("error!!!\n"); Sleep(2000); goto LOOP
12、 } } break; case 4:addone();printf("按任意键返回主菜单!\n");getch();system("cls");showmenu ();break; case 5: if (i==0) { printf("没有学校可以删除!\n"); Sleep(2000); system("cls");
13、 showmenu (); } else { SIGN: system("cls"); printf ("***************************\n"); printf ("* 1.按编号删除一条信息 *\n"); printf ("* 2.按名称删除
14、一条信息 *\n"); printf ("* 3.清空列表 *\n"); printf ("***************************\n"); printf ("请选择:"); scanf ("%d",&num3); printf("\n"); if (num3==1)
15、 { deleteone_id(); printf("已成功删除此条信息!\n按任意键返回主菜单!\n"); getch(); system("cls"); showmenu(); } else if (
16、num3==2) { deleteone_name(); printf("已成功删除此条信息!\n按任意键返回主菜单!\n"); getch(); system("cls"); showmenu(); }
17、 else if (num3==3) { deleteall(); printf ("已删除所有学校信息!\n"); printf("按任意键返回主菜单!\n"); getch(); system("cls");
18、 showmenu(); } else { printf ("error!!!\n"); Sleep(2000); system("cls"); goto SIGN; } } break; case 6:paixu();p
19、rintf("按任意键返回主菜单!\n");getch();system("cls");showmenu ();break; case 7:saveall();printf("按任意键返回主菜单!\n");getch();system("cls");showmenu();break; case 0: loop: system("cls"); printf ("**********************\n"); printf ("* 确定退出? *\n"); pr
20、intf ("**********************\n"); printf ("* 1.是 *\n"); printf ("* 2.否 *\n"); printf ("* 3.取消 *\n"); printf ("**********************\n"); printf ("请选择:"); scanf ("%d",&num3); printf("\n"); if (num3==1)
21、{ Loop: system("cls"); printf ("**********************\n"); printf ("* 是否保存? *\n"); printf ("**********************\n"); printf ("* 1.是 *\n"); pri
22、ntf ("* 2.否 *\n"); printf ("* 3.取消 *\n"); printf ("**********************\n"); printf ("请选择:"); scanf("%d",&num4); printf("\n"); switch (num4)
23、 { case 1: saveall();printf("谢谢使用!\n");exit(0); case 2: printf("谢谢使用!\n");exit(0); case 3: printf("谢谢使用!\n");exit(0); default :printf("error!!!\n");Sleep(2000);goto Loop;
24、 } } else if (num3==2||num3==3) ; else { printf ("error!!!"); Sleep(2000); goto loop; } break; case 8: mark: system("cls"); printf ("***************************\n")
25、 printf ("* 1.按编号修改一条信息 *\n"); printf ("* 2.按名称修改一条信息 *\n"); printf ("***************************\n"); printf ("请选择:"); scanf ("%d",&num5); printf("\n");
26、 if (num5==1) { int w; w=idsearch(); MARK: printf ("****************************\n"); printf ("* 1.学校名称 *\n")
27、 printf ("* 2.学校专业总数 *\n"); printf ("* 3.学校在校人数总数 *\n"); printf ("* 4.建校时间/年 *\n"); printf ("* 5.建校时间/月 *\n"); print
28、f ("* 6.建校时间/日 *\n"); printf ("****************************\n"); printf ("请选择:"); scanf ("%d",&num6); switch (num6) {
29、 case 1: printf(" 请输入学校名称: "); scanf("%s",xx[w].name); break; case 2 : printf(" 请输入学校专业总数: ");
30、 scanf("%d",&xx[w].zynum); break; case 3 : printf(" 请输入学校在校人数总数: "); scanf("%I64d",&xx[w].stnum); break;
31、 case 4 : printf(" 请输入建校时间/年: "); scanf("%d",&xx[w].year); break; case 5 : printf("请输入建校时间/月: ")
32、 scanf("%d",&xx[w].month); break; case 6 : printf("请输入建校时间/日: "); scanf("%d",&xx[w].day);
33、 break; default: printf("error!!!\n"); Sleep(2000); system("cls"); goto MARK; break;
34、 } printf("\n"); printone(w); printf("按任意键返回主菜单!\n"); getch(); system("cls"); showmenu();
35、} else if (num5==2) { int y; y=namesearch(); Mark: printf ("****************************\n"); printf ("*
36、1.学校编号 *\n"); printf ("* 2.学校专业总数 *\n"); printf ("* 3.学校在校人数总数 *\n"); printf ("* 4.建校时间/年 *\n"); printf ("* 5.建校时间/月 *\n");
37、 printf ("* 6.建校时间/日 *\n"); printf ("****************************\n"); printf ("请选择:"); scanf ("%d",&num6); switch (num6) {
38、 case 1: printf(" 请输入学校编号: "); scanf("%s",xx[y].id); break; case 2 : printf(" 请输入学校专业总数: ");
39、 scanf("%d",&xx[y].zynum); break; case 3 : printf(" 请输入学校在校人数总数: "); scanf("%I64d",&xx[y].stnum);
40、 break; case 4 : printf(" 请输入建校时间/年: "); scanf("%d",&xx[y].year); break; case 5 : p
41、rintf("请输入建校时间/月: "); scanf("%d",&xx[y].month); break; case 6 : printf("请输入建校时间/日: "); scanf("%d",&xx[y].day);
42、 break; default: printf("error!!!\n"); Sleep(2000); system("cls"); goto Mark; brea
43、k; } printone(y); printf("按任意键返回主菜单!\n"); getch(); system("cls"); showmenu(); }
44、else { printf ("error!!!\n"); Sleep(2000); goto mark; } default :printf("error!!!");Sleep(2000);system("cls");showmenu(); } } void read () { FILE *fp; fp = fopen("
45、keshe.txt","r+"); if (fp == NULL) { printf("未保存任何学校信息!\n"); return; } while(!feof(fp)) { fscanf(fp,"%s%s%d%I64d%d%d%d",xx[i].id,xx[i].name,&xx[i].zynum,&xx[i].stnum,&xx[i].year,&xx[i].month,&xx[i].day); i++; } printf("已读入文件信息!\n"); fclose(fp);
46、} void printone(int n) { if (i!=0) { printf("******************************************************************\n"); printf ("学校编号 学校名称 学校专业总数 学校在校学生人数 建校时间年 月 日\n"); printf("******************************************************************\n"); printf("
47、 %-s\t%-s\t%-d\t%-I64d\t%-d\t%-d\t%-d\t *\n",xx[n].id,xx[n].name,xx[n].zynum,xx[n].stnum,xx[n].year,xx[n].month,xx[n].day); printf("******************************************************************\n"); } } void printall() { if (i!=0) { int j; printf("*******
48、\n"); printf ("学校编号 学校名称 学校专业总数 学校在校学生人数 建校时间年 月 日\n"); printf("*****************************************************************\n"); for(j=0;j
49、\n",xx[j].id,xx[j].name,xx[j].zynum,xx[j].stnum,xx[j].year,xx[j].month,xx[j].day); printf("*****************************************************************\n"); } } int idsearch() { int a; char id[16]; printf("请输入学校编号:"); scanf("%s",id); print
50、f("\n"); for(a=0;a
©2010-2025 宁波自信网络信息技术有限公司 版权所有
客服电话:4009-655-100 投诉/维权电话:18658249818