满意答案
#include
#include
#include
typedef struct node1
{
char name[10];
int xuehao;
char nianling[10];
char xingbie[10];
char xueyuan[10];
int chanfei;
node1 *next;
}lnode1,*linklist1;
typedef struct node2
{
char mingcheng[10];
int jiage;
node2 *next;
}lnode2,*linklist2;
void luru(linklist1 h,linklist2 k)
{
int i,j;
i=1;j=1;
lnode1 *a;
lnode2 *b;
while(i!=0)
{
a=(linklist1)malloc(sizeof(lnode1));
printf("请输入学号:");
scanf("%d",&a->xuehao);
fflush(stdin);
printf("请输入姓名:");
gets(a->name);
fflush(stdin);
printf("请输入年龄:");
gets(a->nianling);
fflush(stdin);
printf("请输入性别:");
gets(a->xingbie);
fflush(stdin);
printf("请输入学院:");
gets(a->xueyuan);
printf("请输入已消费的餐费:");
scanf("%d",&a->chanfei);
a->next=h->next;
h->next=a;
printf("是否继续 1 继续 0 停止\n");
scanf("%d",&i);
}
while(j!=0)
{
b=(linklist2)malloc(sizeof(lnode2));
printf("请输入餐名:");
fflush(stdin);
gets(b->mingcheng);
fflush(stdin);
printf("请输入餐价:");
scanf("%d",&b->jiage);
b->next=k->next;
k->next=b;
printf("是否继续 1 继续 0 停止\n");
scanf("%d",&j);
}
}
void put(linklist1 h)
{
linklist1 a;
a=h->next;
while(a!=NULL)
{
printf("%d",a->xuehao);
a=a->next;
}
}
void jiuchan(linklist1 h,linklist2 k)
{ char a[10];int b,d=1,c=1;
printf("你要买什么:");
scanf("%s",a);
lnode1 *p ;
lnode2 *q;
p=h->next;
q=k->next;
while(q!=NULL&&d==1)
{printf("hao1"); if(strcmp(a,q->mingcheng)!=0) q=q->next; else { printf("请输入你的学号:"); scanf("%d",&b); while(p!=NULL&&c==1) { if (p->xuehao!=b) p=p->next; else { printf("共花费%d元\n",q->jiage); p->chanfei=p->chanfei+q->jiage; c=0; }
}printf("若没有结果,则你的学号有误\n");
d=0;
}
}
printf("你输入的饭菜我们没有呀\n");
}
void chaxun(linklist1 h)
{
int i,d=1;
printf("请输入你要查寻得学号:\n");
scanf("%d",&i);
lnode1 *p;
p=h->next;
while(p!=NULL&&d==1)
{printf("hao1"); if (p->xuehao!=i) { p=p->next; }
else
{
printf("hao1");
printf("本月以消费 %d\n",p->chanfei);
d=0;
}
}
printf("若没有结果,则你的学号有误\n");
}
void main()
{
int i;
linklist1 h;linklist2 k;
h=(linklist1)malloc(sizeof(lnode1));h->next=NULL;
k=(linklist2)malloc(sizeof(lnode2));k->next=NULL;
for(i=0;i<100;i++)
{
printf("欢迎来到本食堂就餐:\n");
printf("请输入你的命令:\n");
printf("************1************录入信息\n");
printf("************2************付费\n");
printf("************3************查询\n");
scanf("%d",&i);
switch(i)
{
case 1:printf("请输入学生和食谱信息:\n");
luru( h, k);
put(h);
printf("hao");
break;
case 2:printf("进入就餐系统\n");
jiuchan(h,k);break;
case 3:printf("欢迎进入餐费查询系统:\n");
chaxun(h);break;
}
}
}
没问题 我就不注释了 花了30分钟啊
00分享举报