C语言项目设计学校管理信息系统.docx
- 文档编号:9819998
- 上传时间:2023-05-21
- 格式:DOCX
- 页数:49
- 大小:137.20KB
C语言项目设计学校管理信息系统.docx
《C语言项目设计学校管理信息系统.docx》由会员分享,可在线阅读,更多相关《C语言项目设计学校管理信息系统.docx(49页珍藏版)》请在冰点文库上搜索。
C语言项目设计学校管理信息系统
《C语言项目设计》
课程设计题目:
学校管理信息系统
学生学号:
学生姓名:
指导老师:
一、项目设计目的及功能:
本系统由C语言编写而成,主要实现对学校信息的管理。
系统主要内容为学校编号、学校名称(河海大学)、学校专业总数、学校在校学生人数、建校时间(年月日),可实现从外部读入数据、数据输入、添加、查询(按编号查询,按名称查询)、删除(按编号删除,按名称删除,删除全部)、排序以及对所输入的数据的保存等功能。
二、运行结果截图:
程序运行主界面:
增加学校信息:
删除学校信息:
按编号删除:
按名称删除:
删除全部:
修改学校信息:
按编号修改:
按名称修改:
查询学校信息:
按编号查询:
按名称查询:
排序:
三、程序代码:
程序一(结构体数组+文件):
#include
#include
#include
#include
#defineN500
inti;
voidshowmenu();
voidread();
voidprintone(intn);
voidprintall();
intidsearch();
intnamesearch();
voidaddone();
voiddeleteone_id();
voiddeleteone_name();
voiddeleteall();
voidpaixu();
voidsaveall();
typedefstruct_school
{
charid[16];
charname[32];
intzynum;
__int64stnum;
intyear;
intmonth;
intday;
}School;
Schoolxx[N];
intmain()
{
i=0;
showmenu();
return0;
}
voidshowmenu()
{
intnum1,num2,num3,num4,num5,num6,num7;
printf("***********************************\n");
printf("*学校信息管理系统*\n");
printf("***********************************\n");
printf("*1.读入已有信息*\n");
printf("*2.列出所有学校*\n");
printf("*3.查询指定学校*\n");
printf("*4.添加记录*\n");
printf("*5.删除记录*\n");
printf("*6.重新排序*\n");
printf("*7.保存信息*\n");
printf("*8.修改信息*\n");
printf("*0.退出系统*\n");
printf("***********************************\n");
printf("请选择:
");
scanf("%d",&num1);
printf("\n");
switch(num1)
{
case1:
read();printf("按任意键返回主菜单!
\n");getch();system("cls");showmenu();break;
case2:
printall();printf("按任意键返回主菜单!
\n");getch();system("cls");showmenu();break;
case3:
if(i==0)
{
printf("没有学校可以查询!
\n");
Sleep(2000);
system("cls");
showmenu();
}
else
{
LOOP:
system("cls");
printf("**********************\n");
printf("*1.按编号查询*\n");
printf("*2.按名称查询*\n");
printf("**********************\n");
printf("请选择:
");
scanf("%d",&num2);
printf("\n");
if(num2==1)
{
idsearch();
printf("按任意键返回主菜单!
\n");
getch();
system("cls");
showmenu();
}
elseif(num2==2)
{
namesearch();
printf("按任意键返回主菜单!
\n");
getch();
system("cls");
showmenu();
}
else
{
printf("error\n");
Sleep(2000);
gotoLOOP;
}
}
break;
case4:
addone();printf("按任意键返回主菜单!
\n");getch();system("cls");showmenu();break;
case5:
if(i==0)
{
printf("没有学校可以删除!
\n");
Sleep(2000);
system("cls");
showmenu();
}
else
{
SIGN:
system("cls");
printf("***************************\n");
printf("*1.按编号删除一条信息*\n");
printf("*2.按名称删除一条信息*\n");
printf("*3.清空列表*\n");
printf("***************************\n");
printf("请选择:
");
scanf("%d",&num3);
printf("\n");
if(num3==1)
{
deleteone_id();
printf("已成功删除此条信息!
\n按任意键返回主菜单!
\n");
getch();
system("cls");
showmenu();
}
elseif(num3==2)
{
deleteone_name();
printf("已成功删除此条信息!
\n按任意键返回主菜单!
\n");
getch();
system("cls");
showmenu();
}
elseif(num3==3)
{
deleteall();
printf("已删除所有学校信息!
\n");
printf("按任意键返回主菜单!
\n");
getch();
system("cls");
showmenu();
}
else
{
printf("error\n");
Sleep(2000);
system("cls");
gotoSIGN;
}
}
break;
case6:
paixu();printf("按任意键返回主菜单!
\n");getch();system("cls");showmenu();break;
case7:
saveall();printf("按任意键返回主菜单!
\n");getch();system("cls");showmenu();break;
case0:
loop:
system("cls");
printf("**********************\n");
printf("*确定退出?
*\n");
printf("**********************\n");
printf("*1.是*\n");
printf("*2.否*\n");
printf("*3.取消*\n");
printf("**********************\n");
printf("请选择:
");
scanf("%d",&num3);
printf("\n");
if(num3==1)
{
Loop:
system("cls");
printf("**********************\n");
printf("*是否保存?
*\n");
printf("**********************\n");
printf("*1.是*\n");
printf("*2.否*\n");
printf("*3.取消*\n");
printf("**********************\n");
printf("请选择:
");
scanf("%d",&num4);
printf("\n");
switch(num4)
{
case1:
saveall();printf("谢谢使用!
\n");exit(0);
case2:
printf("谢谢使用!
\n");exit(0);
case3:
printf("谢谢使用!
\n");exit(0);
default:
printf("error\n");Sleep(2000);gotoLoop;
}
}
elseif(num3==2||num3==3)
;
else
{
printf("error");
Sleep(2000);
gotoloop;
}
break;
case8:
mark:
system("cls");
printf("***************************\n");
printf("*1.按编号修改一条信息*\n");
printf("*2.按名称修改一条信息*\n");
printf("***************************\n");
printf("请选择:
");
scanf("%d",&num5);
printf("\n");
if(num5==1)
{
intw;
w=idsearch();
MARK:
printf("****************************\n");
printf("*1.学校名称*\n");
printf("*2.学校专业总数*\n");
printf("*3.学校在校人数总数*\n");
printf("*4.建校时间/年*\n");
printf("*5.建校时间/月*\n");
printf("*6.建校时间/日*\n");
printf("****************************\n");
printf("请选择:
");
scanf("%d",&num6);
switch(num6)
{
case1:
printf("请输入学校名称:
");
scanf("%s",xx[w].name);
break;
case2:
printf("请输入学校专业总数:
");
scanf("%d",&xx[w].zynum);
break;
case3:
printf("请输入学校在校人数总数:
");
scanf("%I64d",&xx[w].stnum);
break;
case4:
printf("请输入建校时间/年:
");
scanf("%d",&xx[w].year);
break;
case5:
printf("请输入建校时间/月:
");
scanf("%d",&xx[w].month);
break;
case6:
printf("请输入建校时间/日:
");
scanf("%d",&xx[w].day);
break;
default:
printf("error\n");
Sleep(2000);
system("cls");
gotoMARK;
break;
}
printf("\n");
printone(w);
printf("按任意键返回主菜单!
\n");
getch();
system("cls");
showmenu();
}
elseif(num5==2)
{
inty;
y=namesearch();
Mark:
printf("****************************\n");
printf("*1.学校编号*\n");
printf("*2.学校专业总数*\n");
printf("*3.学校在校人数总数*\n");
printf("*4.建校时间/年*\n");
printf("*5.建校时间/月*\n");
printf("*6.建校时间/日*\n");
printf("****************************\n");
printf("请选择:
");
scanf("%d",&num6);
switch(num6)
{
case1:
printf("请输入学校编号:
");
scanf("%s",xx[y].id);
break;
case2:
printf("请输入学校专业总数:
");
scanf("%d",&xx[y].zynum);
break;
case3:
printf("请输入学校在校人数总数:
");
scanf("%I64d",&xx[y].stnum);
break;
case4:
printf("请输入建校时间/年:
");
scanf("%d",&xx[y].year);
break;
case5:
printf("请输入建校时间/月:
");
scanf("%d",&xx[y].month);
break;
case6:
printf("请输入建校时间/日:
");
scanf("%d",&xx[y].day);
break;
default:
printf("error\n");
Sleep(2000);
system("cls");
gotoMark;
break;
}
printone(y);
printf("按任意键返回主菜单!
\n");
getch();
system("cls");
showmenu();
}
else
{
printf("error\n");
Sleep(2000);
gotomark;
}
default:
printf("error");Sleep(2000);system("cls");showmenu();
}
}
voidread()
{
FILE*fp;
fp=fopen("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);
}
voidprintone(intn)
{
if(i!
=0)
{
printf("******************************************************************\n");
printf("学校编号学校名称学校专业总数学校在校学生人数建校时间年月日\n");
printf("******************************************************************\n");
printf("*%-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");
}
}
voidprintall()
{
if(i!
=0)
{
intj;
printf("*****************************************************************\n");
printf("学校编号学校名称学校专业总数学校在校学生人数建校时间年月日\n");
printf("*****************************************************************\n");
for(j=0;j
printf("*%-s\t%-s\t%-d\t%-I64d\t%-d\t%-d\t%-d\t*\n",xx[j].id,xx[j].name,xx[j].zynum,xx[j].stnum,xx[j].year,xx[j].month,xx[j].day);
printf("*****************************************************************\n");
}
}
intidsearch()
{
inta;
charid[16];
printf("请输入学校编号:
");
scanf("%s",id);
printf("\n");
for(a=0;a
{
if(strcmp(id,xx[a].id)==0)
{
printone(a);
returna;
}
}
return-1;
}
intnamesearch()
{
inta;
charname[32];
printf("请输入学校名称:
");
scanf("%s",name);
printf("\n");
for(a=0;a
{
if(strcmp(name,xx[a].name)==0)
{
printone(a);
returna;
}
}
return-1;
}
voidaddone()
{
printf("******************************************************************************************\n");
printf("请输入学校信息(格式:
学校编号学校名称学校专业总数学校在校学生人数建校时间年月日):
\n");
printf("******************************************************************************************\n");
scanf("%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");
}
voiddeleteone_id()
{
if(i==0)
printf("没有学校信息可以删除!
\n");
else
{
charid[16];
intn,j;
printf("要输入的学校信息是:
\n");
n=idsearch();
if(n==-1)
printf("没有此条学校信息!
");
else
{
for(j=n;j
xx[j]=xx[j+1];
i--;
}
}
}
voiddeleteone_name()
{
if(i==0)
printf("没有学校信息可以删除!
\n");
else
{
charname[32];
intn,j;
printf("要输入的学校信息是:
\n");
n=namesearch();
if(n==-1)
printf("没有此条学校信息!
");
else
{
for(j=n;j
xx[j]=xx[j+1];
i--;
}
}
}
voiddeleteall()
{
if(i==0)
printf("没有学校信息可以删除!
\n");
else
{
i=0;
}
}
voidpaixu()
{
if(i==0)
printf("没有学校信息可以排序!
\n");
else
{
intk,j,s;
Schoolt;
for(s=0;s<=i-2;s++)
{
k=s;
for(j=s+1;j
if(strcmp(xx[j].id,xx[k].id)<0)
{
k=j;
}
if(k!
=s)
{
t=xx[s];
xx[s]=xx[k];
xx[k]=t;
}
}
}
printall();
}
voidsaveall()
{
FILE*fp;
intj;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 项目 设计 学校 管理信息系统
![提示](https://static.bingdoc.com/images/bang_tan.gif)