资源简介
设计快餐POS机收费管理程序。假设某快餐店一共出售3大类食品(饮料、主食、小食品),各种食品的具体食物有:饮料4种(可口可乐,芬达,橙汁,美年达),主食有10种(巨无霸汉堡、双层吉士汉堡、双鱼汉堡、煎蛋汉堡、蔬菜汉堡、鸡肉饭、鱼香饭、咖喱饭、麻婆饭、宫保饭),小食品3种(冰激凌、薯条、牛奶玉米棒)。
代码片段和文件信息
#include
#include
#include
#include
#define M1 4
#define M2 10
#define M3 3
#define MAX 100
struct Drink /*饮料结构体*/
{
char code[5];
char name[20];
char price[5];
};
struct Hamburger /*主食结构体*/
{
char code[5];
char name[20];
char price[5];
};
struct Snack /*小吃结构体*/
{
char code[5];
char name[20];
char price[5];
};
struct Food /*总的食品信息*/
{
struct Drink drink[M1];
struct Hamburger hamburger[M2];
struct Snack snack[M3];
}food;
struct Buy /*消费者对于一种食品的消费情况,包括该食品编号、食品名称、食品单价、消费食品数量、消费该视频总金额*/
{
char code[5];
char name[20];
float dan;
int num;
float sum;
};
struct All /*消费者一天的总消费额,包括消费总金额,缴款金额及找零*/
{
struct Buy buy[20];
float total;
float money;
float remain;
}all[MAX];
void save2() /*调用本函数把在void save1()中记录下来的信息以“wb”的形式,写入到文件中去*/
{
FILE *fp;
if((fp=fopen(“food““wb“))==NULL) /*判断文件是否成功打开*/
{
printf(“cannot open file.\n“);
return;
}
if(fwrite(&foodsizeof(struct Food)1fp)!=1) /*判断文件是否写入成功*/
printf(“file write error.\n“);
fclose(fp);
}
/*我们对食品名称输入是否重复、食品价格输入是否合法方面进行了限制,保证输入正确*/
void save1()
{
int ip[3]jflag=0;
char c;
char s[20];
int ss=1;
printf(“\n“);
for(i=0;i {
fflush(stdin); //清除文件缓冲区
food.drink[i].code[0]=‘1‘; /*为食品分配出编号*/
p[0]=(i+1)%10;
p[1]=(i+1)/10%10;
p[2]=(i+1)/100%10;
food.drink[i].code[1]=char(p[2]+48); /*将数字转化成字符 */
food.drink[i].code[2]=char(p[1]+48);
food.drink[i].code[3]=char(p[0]+48);
food.drink[i].code[4]=‘\0‘;
printf(“第%d种饮料代号为:%s\n“i+1food.drink[i].code);
/*输入饮料名称*/
printf(“输入第%d种饮料名称:“i+1); /* 提示用户输入食品名称及食品价格*/
gets(s);
strcpy(food.drink[i].names); //将输入的内容粘贴到food.drink[i]
/*输入饮料价格*/
jg1: printf(“输入第%d种饮料价格:“i+1);
j=0;
flag=0;
fflush(stdin); //清除文件缓冲区
c=getchar();
while(1)
{
if(c==10)
break;
if((c<58&&c>47)||c==‘.‘)
{
if(c==‘.‘&&flag==1)
{
printf(“!!!!!输入错误!请重新输入!!!!!!!!\n“);
food.drink[i].price[0]=‘\0‘;
goto jg1;
}
if(c==‘.‘)
flag=1;
if(c==‘.‘&&j==0)
{
printf(“!!!!!输入错误!请重新输入!!!!!!!!\n“);
food.drink[i].price[0]=‘\0‘;
goto jg1;
}
food.drink[i].price[j++]=c;
c=getchar();
}
else
{
printf(“!!!!!输入错误!请重新输入!!!!!!!!\n“);
goto jg1;
}
}
printf(“\n“);
}
printf(“\n“);
for(i=0;i {
fflush(stdin); //清除文件缓冲区
food.hamburger[i].code[0]=‘2‘;
p[0]=(i+1)%10;
p[1]=(i+1)/10%10;
p[2]=(i+1)/100%10;
food.hamburger[i].code[1]=char(p[2]+48);
food.hamburger[i].code[2]=char(p[1]+48);
food.hamburger[i].code[3]=char(p[0]+48);
food.hamburger[i].code[4]=‘\0‘;
printf(“第%d种汉堡代号为:%s\n“
相关资源
- 谭浩强C程序设计第五版课件及源码
- C89(ISO/IEC 9899 1990)中文版 GB/T 15272
- 《测量平差程序设计》宋力杰编著光
- jpg图片、png图片、24位/32位位图转25
- 《c程序设计试题汇编》谭浩强 电子版
- BMP180气压计STM32例程+51例程+数据手册
- 谭浩强C程序设计第三版课件
- 基于VC++MFC程序设计简易画图板
- VC基于对话框的MFC程序,实现字符统计
- 一个POP3协议 MFC程序
- C程序设计语言K&R中文+英文+习题答案
- 解决VC6生成的MFC程序不能在没有安装
- C程序设计第五版谭浩强PPT课件、课后
- 21点游戏MFC程序设计 c++课程设计
- 逐点比较法插补原理VC程序设计
- c程序设计第四版pdf
- vs2012 mfc程序用Socket实现两台计算机间
- 车道线检测MFC程序
- C程序设计(第四版)(清华出版.谭浩
- 基于OpenCV的人脸验证和人脸识别MFC程
- C语言的圣经 - K&R的C程序设计语言第
- C语言四大圣经 《C程序设计语言》《
- C程序设计语言第二版,中英文版 习题
- 读取图片并显示的MFC程序
- C程序设计
- C程序设计语言(第2版·新版)
- C程序设计语言习题解答(第二版)
- 《C程序设计(第五版)学习辅导》高
- c程序设计(第五版)学习辅导
- DSPIC数字信号控制器C程序开发及应用
评论
共有 条评论