医院管理系统源代码.docx
《医院管理系统源代码.docx》由会员分享,可在线阅读,更多相关《医院管理系统源代码.docx(9页珍藏版)》请在冰豆网上搜索。
![医院管理系统源代码.docx](https://file1.bdocx.com/fileroot1/2022-11/17/a233f736-9584-4eba-940f-10518afde41c/a233f736-9584-4eba-940f-10518afde41c1.gif)
医院管理系统源代码
#include
#include//为以下system的函数的头文件
#defineN100//宏定义,下面在主程序中对N进行了使用。
N表示病人的个数,以后修改时可以直接修改这里。
intn;//整体变量,表示病人数
typedefstructbingren//病人信息自己定义的结构体,建立所需要的数据类型
{/*c语言中给的数据结构不能满足需要,所以自己建立组合型数据结构*/
charnumber[20];//定义number为整型数据,当number为0时退出。
不能超过4位
charname[10];
intxiaofei;//消费信息为实型
intnianling;//年龄为整型数据
charbingli[200];//病例信息为字符型数组,能输入99个汉字(还有\0)
}BINGREN;//定义一个结构体变量为BINGREN
voidxinghao()/*星号子函数模块,用于输出一排星号*/
{
inti;
for(i=0;i<80;i++)//输出一排******号
putchar('*');//输出*号
}
/*-----------输入信息子程序---------*/
voidinput(BINGREN*data,int*len)
{
inti;
system("cls");//清屏
system("title病人信息录入菜单");
system("color3f");//湖蓝色背景+亮白色字体
printf("\n");//换行操作,目的是让下面显示的字的排布更好看
printf("\n");//换行操作,目的是让下面显示的字的排布更好看
printf("请输入需要输入的病人人数如果需要退出当前菜单请输入0.\n");
scanf("%d",&n);
for(i=0;i{
printf("\n");//换行操作,目的是让下面显示的字的排布更好看
printf("请输入第%d个病人ID号:
",i+1);
scanf("%s",data[*len].number);//输入语句,输入的数字经过判断,如果是0则退回菜单页面。
若不是0则进行以下操作
printf("请分别输入姓名消费信息年龄病例\n");
printf("如:
张三5631感冒头痛呕吐");
putchar('\n');
scanf("%s%d%d%s",&data[*len].name,&data[*len].xiaofei,
&data[*len].nianling,&data[*len].bingli);//输入的数据依次存到上述指针地址
(*len)++;
}
}
voidoutput(BINGREN*data,intlen)
{
system("cls");//清屏
system("title病人信息输出菜单");
system("color2f");//绿色背景+亮白色字体
inti,no;
printf("ID姓名消费信息年龄病例\n");
xinghao();//对星号函数的调用
for(i=0;i{
printf("%8s",data[i].number);//只能对每个结构体内的变量进行输入和输出。
printf("%8s",data[i].name);//"."是成员运算符,优先级别最高
printf("%8d",data[i].xiaofei);
printf("%8d",data[i].nianling);
printf("%10s",data[i].bingli);//病例为汉字,所以用“s”输出字符串
putchar('\n');
}
xinghao();//对星号函数的调用
printf("按回车键继续.");
getchar();
getchar();
}
/*--------------------搜索子程序-----------------------*/
voidfind(BINGREN*data,intlen)
{
system("cls");//清屏
system("title搜索信息菜单");
system("color5f");//紫色背景+亮白色字体
inti;
charno[20];
printf("请输入需要查找的病人的ID号,退出当前菜单请输入0,再键入ENTER.");
scanf("%s",no);//用户键入命令
for(i=0;i{
if(strcmp(no,data[i].number)==0)//字符串比较函数,如果两个字符串相同则等于0
{
printf("\n");
printf("%s\n","查询信息如下:
");
xinghao();//对星号函数的调用
putchar('\n');
printf("%8s","ID");
printf("%8s","姓名");
printf("%12s","消费信息");
printf("%10s","年龄");
printf("%10s","病例");
putchar('\n');
printf("%8s",data[i].number);//输出存入的数据。
printf("%8s",data[i].name);
printf("%8d",data[i].xiaofei);
printf("%10d",data[i].nianling);
printf("%8s",data[i].bingli);
putchar('\n');
xinghao();//对星号函数的调用
printf("按任意键继续\n");
getchar();
}
else
printf("无相关病人信息按任意键继续");
getchar();
}
}
/*-------------删除子程序--------------*/
voiddelete1(BINGREN*data,int*len)//删除信息
{intc;
system("cls");//清屏
system("title信息删除菜单");
system("color4f");//红色背景+亮白色字体
inti,j;
i=0;
charno[20];
charm;
printf("%s\n","输入需要删除的病人的ID号,退出请按0");
scanf("%s",&no);//用户键入的数字,到地址no中
for(i=0;i{
if(strcmp(no,data[i].number)==0)//字符串比较函数
{
{
printf("%8s","姓名");
printf("%8s","ID");
printf("%12s","消费信息");
printf("%10s","年龄");
printf("%10s","病例");
putchar('\n');
printf("%8s",data[i].name);
printf("%8s",data[i].number);//输出存入的数据。
printf("%8d",data[i].xiaofei);
printf("%10d",data[i].nianling);
printf("%8s",data[i].bingli);
putchar('\n');
xinghao();
c=i;//对星号函数的调用
}
printf("请是否确认删除YorN\n");
getchar();
scanf("%c",&m);
if(m=='y'||m=='Y')
{
for(i=c;idata[i]=data[i+1];
n=n-1;/*删除该学生信息后学生总数减一*/
printf("%s\n","已经成功删除,请按任意键继续");
*len=*len-1;
getchar();
getchar();
break;
}
else
{
printf("%s\n","删除的病人信息失败");
continue;
}
}
}
}
voidpaint()
{
inti;
system("cls");
system("title医院管理系统主菜单");
system("color6f");
printf("%s\n","燕山大学14界学生\n");
printf("制作者:
\n");
printf("队长:
朱子文\n");
printf("队员:
王亚玲、徐世明\n");
xinghao();//对星号函数的调用
putchar('\n');
printf("1输入病人信息2输出病人信息\n");
printf("3按ID删除4按ID查找\n");
printf("5保存到文件6按0退出\n");
putchar('\n');
xinghao();//对星号函数的调用
putchar('\n');
printf("请输入各操作对应的序号:
");
}
voidsave(BINGREN*data,intlen)//将数据保存到文件
{
system("cls");//清屏
system("title病人信息输出菜单");
system("color3f");//湖蓝色背景+亮白字体
inti;
FILE*fp;//文件指针
fp=fopen("D:
\\病人信息统计表.txt","w");//将文件保存到电脑的D盘
fprintf(fp,"%8s","姓名");
fprintf(fp,"%8s","ID");
fprintf(fp,"%12s","消费信息");
fprintf(fp,"%10s","年龄");
fprintf(fp,"%8s","病例");
fprintf(fp,"\n");
for(i=0;i{
fprintf(fp,"%8s",data[i].number);
fprintf(fp,"%8s",data[i].name);
fprintf(fp,"%8d",data[i].xiaofei);
fprintf(fp,"%10d",data[i].nianling);
fprintf(fp,"%8s",data[i].bingli);
fprintf(fp,"\n");
}
fprintf(fp,"========================================================================\n");
fclose(fp);
printf("文件已保存到\"病人信息统计表.txt\"");
getchar();
getchar();
}
/*-----