帮帮忙吧,老师给我开的小灶题,后面弄不懂额,后面格式怎么转化啊、、、
**********欢迎光临渤大食堂**********套餐名 单价
1 烧茄子套餐 5.00
2 红烧排骨套餐 8.00
3 西红柿炖牛肉套餐 10.00
4 红焖大虾套餐 12.00
您的餐桌号是:9
您所点套餐是:3
份数:2
总金额:¥20.00
实付金额:¥50.00
找零:¥30.00
一、初级要求:
只要能够显示上述内容,读入数据,计算找零即可;
二、中级要求:
使用while(1)死循环包含程序,使程序一直处于等待输入的状态(注:真实POS机就是这样的,一直运行直到关闭电源);
三、高级要求:
对输入错误进行设置,如果输入错误,比如钱数为-10,没有输入的套餐号,餐桌号不能为负数等,则提示错误原因,并让用户重新输入。
#define N 4
struct menu
{int num;
char name[10];
float dj;
};
main()
{int sum,a,b,x,i;float j,c,d,f;
struct menu men[]={{1,"烧茄子套餐",5.00},
{2,"红烧排骨套餐",8.00},
{3,"西红柿炖牛肉套餐",10.00},
{4,"红焖大虾套餐",12.00}};
{printf("**********欢迎光临渤大食堂**********\n");
printf("\t套餐名\t单价");
{for(i=0;i<4;i++)
printf("%d\t%s\t%f\n",men[i].num,men[i].name,men[i].dj);
}
}
printf("您的餐桌号是:");
scanf("%d",&sum);
printf("您所点套餐是:");
scanf("%d",&a);
i=1;
while(a==men[i].num)
j=men[i].dj;
i++;
printf("份数:");
scanf("%d",&b);
c=b*j;
printf("总金额:%f\n",c);
printf("实付金额:");
scanf("%f",&d);
f=d-c;
printf("找零:%f",f);
}