同类型的东西我在百度上已经见了5个了。试试这个吧:
#include
#include
#include
struct patient{
char name[10];
char gender[3];
int age;
char starting_time[20];
char room[10];
char bed[10];
char reason[50];
char doctor[10];
struct patient *next;
};
typedef struct patient Patient;
Patient *s=0;
void add(){
Patient *p;
if(s==0){
s=(Patient *)malloc(sizeof(Patient));
s->next=0;
p=s;
}
else{
p=s;
while(p->next!=0) p=p->next;
p->next=(Patient *)malloc(sizeof(Patient));
p=p->next;
p->next=0;
}
printf("输入名字:");
scanf("%s",p->name);
printf("输入性别:");
scanf("%s",p->gender);
printf("输入年龄:");
scanf("%d",&(p->age));
printf("输入住院时间:");
scanf("%s",p->starting_time);
printf("输入房间号:");
scanf("%s",p->room);
printf("输入床号:");
scanf("%s",p->bed);
printf("输入住院原因:");
scanf("%s",p->reason);
printf("输入主治医师:");
scanf("%s",p->doctor);
}
void modify(){
if(s==0){
printf("无此记录\n");
return;
}
char name[10];
printf("输入名字:");
scanf("%s",name);
Patient *p;
p=s;
while(p!=0){
if(strcmp(p->name,name)==0) break;
p=p->next;
}
if(p==0) printf("无此记录\n");
else{
printf("姓名 性别 年龄 住院时间 房间号 床号 住院原因 主治医生\n");
printf("%s %s %d %s %s %s %s %s\n",p->name,p->gender,p->age,p->starting_time,p->room,p->bed,p->reason,p->doctor);
int c;
printf("1。
姓名 2。性别 3。年龄 4。住院时间 5。房间号 6。床号 7。住院原因 8。主治医生\n");
printf("你要修改的选项:");
scanf("%d",&(p->age));
if(c==1){
printf("输入名字:");
scanf("%s",p->name);
}
else if(c==2){
printf("输入性别:");
scanf("%s",p->gender);
}
else if(c==3){
printf("输入年龄:");
scanf("%d",&(p->age));
}
else if(c==4){
printf("输入住院时间:");
scanf("%s",p->starting_time);
}
else if(c==5){
printf("输入房间号:");
scanf("%s",p->room);
}
else if(c==6){
printf("输入床号:");
scanf("%s",p->bed);
}
else if(c==7){
printf("输入住院原因:");
scanf("%s",p->reason);
}
else if(c==8){
printf("输入主治医师:");
scanf("%s",p->doctor);
}
else printf("非法操作\n");
printf("姓名 性别 年龄 住院时间 房间号 床号 住院原因 主治医生\n");
printf("%s %s %d %s %s %s %s %s\n",p->name,p->gender,p->age,p->starting_time,p->room,p->bed,p->reason,p->doctor);
}
}
void display(){
if(s==0){
printf("无此记录\n");
return;
}
Patient *p;
p=s;
printf("姓名 性别 年龄 住院时间 房间号 床号 住院原因 主治医生\n");
while(p!=0){
printf("%s %s %d %s %s %s %s %s\n",p->name,p->gender,p->age,p->starting_time,p->room,p->bed,p->reason,p->doctor);
p=p->next;
}
}
void search(int i){
if(s==0){
printf("无此记录\n");
return;
}
Patient *p;
p=s;
if(i==1){
char name[10];
printf("输入名字:");
scanf("%s",name);
printf("姓名 性别 年龄 住院时间 房间号 床号 住院原因 主治医生\n");
while(p!=0){
if(strcmp(p->name,name)==0) printf("%s %s %d %s %s %s %s %s\n",p->name,p->gender,p->age,p->starting_time,p->room,p->bed,p->reason,p->doctor);
p=p->next;
}
}
else if(i==2){
char room[10];
printf("输入房间号:");
scanf("%s",room);
printf("姓名 性别 年龄 住院时间 房间号 床号 住院原因 主治医生\n");
while(p!=0){
if(strcmp(p->room,room)==0) printf("%s %s %d %s %s %s %s %s\n",p->name,p->gender,p->age,p->starting_time,p->room,p->bed,p->reason,p->doctor);
p=p->next;
}
}
else printf("非法操作\n");
}
int main(){
int c;
do{
printf("1。
浏览数据 2。增加数据 3。修改数据 4。查询数据 5。退出\n");
printf("你要的操作:");
scanf("%d",&c);
if(c==1){
display();
}
else if(c==2){
add();
}
else if(c==3){
modify();
}
else if(c==4){
int i;
printf("1。
按姓名查找 2。
按病房查找");
printf("你要的操作:");
scanf("%d",&i);
search(i);
}
else if(c==5){
Patient *p;
while(s!=0){
p=s->next;
delete s;
s=p;
}
break;
}
else printf("非法操作\n");
}while(1);
return 0;
}。
全部
c语言病房信息管理 c课程设计医院病房信息管理//18.医院病房信息管理//数据描述 爱问知识人...
如果觉得《c语言病房信息管理 c课程设计医院病房信息管理//18.医院病房信息管理//数据描述 爱》对你有帮助,请点赞、收藏,并留下你的观点哦!