求大佬看一下,奖励啥都好说

qq_42552791 2018-06-27 09:59:26
不知道哪里有错,能运行但是每一个功能都有错,求大佬改一下
#include<stdio.h>
#include<string.h>
//欢迎界面//
void welcome();
//功能浏览//
void mainMenu();
//购物结算//
void saleCalc();
//进货管理//
void addGoods();
//修改信息
void updateGoods();
//显示商品//
void showGoods();
//删除商品//
void deleteGoods();
//查询商品//
int searchGoods();
//购买结算
void saleCalc();
//更新库存//
void updateGoodsNum(int number,char name[50]);
//结构体
struct goods
{
char name[50];//商品名称
int num;//商品数量
float price;//商品价格
};
int count;//商品种类数量
goods list[1000];//声明goods的变量数组
char name[50];
void main()//主函数
{
int num;
welcome();
do{
mainMenu();
printf("请选择功能:");
scanf("%d",&num);
switch(num)
{
case 1:
saleCalc();
break;
case 2:
addGoods();
break;
case 3:
updateGoods();
break;
case 4:
showGoods();
break;
case 5:
deleteGoods();
break;
case 0:
break;
}
}while(num!=0);
}
void welcome()//欢迎界面
{
printf("-------------------------------------------------------------------------\n");
printf("****************欢迎使用超市管理系统*******************\n");
printf("-------------------------------------------------------------------------\n");
}
void mainMenu()//功能浏览界面
{
printf("****1.购物结算****\n");
printf("****2.进货管理****\n");
printf("****3.修改商品****\n");
printf("****4.显示商品****\n");
printf("****5.删除商品****\n");
printf("****0.退出系统****\n");
}
//查询信息
int searchGoods()//查询商品信息
{
printf("请输入您要购买商品的名字:");
scanf("%s",name);
for(int i=0;i<count;i++)
{
if(stricmp(name,list[i].name)==0)
{
return 1;
}
else
{
printf("对不起了,没有找到%c商品\n",name);
return -1;
}
}
}
//购物结算
void saleCalc()//购物结算
{
int number,i,s;
float priceGoods=0,sum=0,money;
char c=' ';
s=searchGoods();
do
{
if(s==-1)
{
s=searchGoods();
}else
{
printf("该商品b存在");
for(i=0;i<count;i++)
{
if(strcmp(name,list[i].name)==0)
{
priceGoods=list[i].price;
break;
}
}
printf("请输入您要购买的数量:");
scanf("%d",&number);
sum=priceGoods*number;
updateGoodsNum(-number,name);
printf("是否继续购买(y/n)");
fflush(stdin);
c=getchar();
}
}while(c=='y'||c=='Y');
printf("本次消费总金额为:%.2f",sum);
printf("请输入您的实际付款金额:");
scanf("%f",&money);
printf("找零:%.2f\n",money-sum);
}
//进货管理
void addGoods() //商品的录入
{
int i=0;
char c=' ';
do
{
printf("请输入商品的名称:");
fflush(stdin);
scanf("%s",list[i].name);
printf("请输入商品的数量:");
scanf("%d",&list[i].num);
printf("请输入商品的单价:");
scanf("%f",&list[i].price);
printf("是否继续(y/n)");
fflush(stdin);
c=getchar();
}while(c=='Y'||c=='y');
}
//更新库存
void updateGoodsNum(int number,char name[50])
{
int i;
for(i=0;i<count;i++)
{
list[i].num+=number;//list[i].num=list[i].num+number
}
}
//显示货物信息
void showGoods()
{
printf("商品名称\t数量\t单价\n");
for(int i=0;i<count;i++)
{
printf("%s\t%d\t%.2f\n",list[i].name,list[i].num,list[i].price);
}
}
//修改商品信息
void updateGoods()
{
int i;
printf("请输入您要修改商品的名字:");
scanf("%s",&name);
for(i=0;i<count;i++)
{
if(strcmp(name,list[i].name)==0)
{
printf("请输入新的商品名字:");
scanf("%s",list[i].name);
printf("请输入您要修改商品的数量:");
scanf("%d",list[i].num);
printf("请输入您要修改商品的单价:");
scanf("%f",list[i].price);
}
else
{
printf("对不起,没有找到该商品信息!");
}
}
}
//删除商品信息
void deleteGoods()
{
int index=-1;
printf("请输入您要删除的商品名字:");
scanf("%s",name);
for(int i=0;i<count;i++)
{
if(strcmp(name,list[i].name)==0)
{
index=i;
}
}if(index==-1)
{
printf("对不起!没有找到您要删除的商品信息!");
}
else{
for(int i=index;i<count;i++)
{
list[i]=list[i+1];
}
}
}
...全文
109 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
棉猴 2018-06-27
  • 打赏
  • 举报
回复
修改了一些,主要是count的操作、scanf()函数的修改以及return语句的添加。
棉猴 2018-06-27
  • 打赏
  • 举报
回复
// ConsoleApplication1.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include<stdio.h>
#include<string.h>
//欢迎界面//
void welcome();
//功能浏览//
void mainMenu();
//购物结算//
void saleCalc();
//进货管理//
void addGoods();
//修改信息
void updateGoods();
//显示商品//
void showGoods();
//删除商品//
void deleteGoods();
//查询商品//
int searchGoods();
//购买结算
void saleCalc();
//更新库存//
void updateGoodsNum(int number, char name[50]);
//结构体
struct goods
{
char name[50];//商品名称
int num;//商品数量
float price;//商品价格
};
int count;//商品种类数量
goods list[1000];//声明goods的变量数组
char name[50];
int main()
{
int num;
welcome();
do {
mainMenu();
printf("请选择功能:");
scanf("%d", &num);
switch (num)
{
case 1:
saleCalc();
break;
case 2:
addGoods();
break;
case 3:
updateGoods();
break;
case 4:
showGoods();
break;
case 5:
deleteGoods();
break;
case 0:
break;
}
} while (num != 0);

return 0; // quiets vc++
}

void welcome()//欢迎界面
{
printf("-------------------------------------------------------------------------\n");
printf("****************欢迎使用超市管理系统*******************\n");
printf("-------------------------------------------------------------------------\n");
}
void mainMenu()//功能浏览界面
{
printf("****1.购物结算****\n");
printf("****2.进货管理****\n");
printf("****3.修改商品****\n");
printf("****4.显示商品****\n");
printf("****5.删除商品****\n");
printf("****0.退出系统****\n");
}
//查询信息
int searchGoods()//查询商品信息
{
printf("请输入您要购买商品的名字:");
scanf("%s", name);
for (int i = 0; i<count; i++)
{
if (_stricmp(name, list[i].name) == 0)
{
return 1;
}
else
{
printf("对不起了,没有找到%c商品\n", name);
return -1;
}
}
}
//购物结算
void saleCalc()//购物结算
{
int number, i, s;
float priceGoods = 0, sum = 0, money;
char c = ' ';
s = searchGoods();
do
{
if (s == -1)
{
s = searchGoods();
}
else
{
printf("该商品存在");
for (i = 0; i<count; i++)
{
if (strcmp(name, list[i].name) == 0)
{
priceGoods = list[i].price;
break;
}
}
printf("请输入您要购买的数量:");
scanf("%d", &number);
sum = priceGoods*number;
updateGoodsNum(-number, name);
printf("是否继续购买(y/n)");
//fflush(stdin);
rewind(stdin);
c = getchar();
}
} while (c == 'y' || c == 'Y');
printf("本次消费总金额为:%.2f", sum);
printf("请输入您的实际付款金额:");
scanf("%f", &money);
printf("找零:%.2f\n", money - sum);
}
//进货管理
void addGoods() //商品的录入
{
int i = 0;
char c = ' ';
do
{
printf("请输入商品的名称:");
fflush(stdin);
scanf("%s", list[count].name);
printf("请输入商品的数量:");
scanf("%d", &list[count].num);
printf("请输入商品的单价:");
scanf("%f", &list[count].price);
printf("是否继续(y/n)");
//fflush(stdin);
count++;
rewind(stdin);
c = getchar();
} while (c == 'Y' || c == 'y');
}
//更新库存
void updateGoodsNum(int number, char name[50])
{
int i;
for (i = 0; i<count; i++)
{
list[i].num += number;//list[i].num=list[i].num+number
}
}
//显示货物信息
void showGoods()
{
printf("商品名称\t数量\t单价\n");
for (int i = 0; i<count; i++)
{
printf("%s\t%d\t%.2f\n", list[i].name, list[i].num, list[i].price);
}
}
//修改商品信息
void updateGoods()
{
int i;
printf("请输入您要修改商品的名字:");
scanf("%s", &name);
for (i = 0; i<count; i++)
{
if (strcmp(name, list[i].name) == 0)
{
printf("请输入新的商品名字:");
scanf("%s", list[i].name);
printf("请输入您要修改商品的数量:");
scanf("%d", &list[i].num);
printf("请输入您要修改商品的单价:");
scanf("%f", &list[i].price);
return;
}
else
{
printf("对不起,没有找到该商品信息!");
}
}
}
//删除商品信息
void deleteGoods()
{
int index = -1;
printf("请输入您要删除的商品名字:");
scanf("%s", name);
for (int i = 0; i<count; i++)
{
if (strcmp(name, list[i].name) == 0)
{
index = i;
}
}if (index == -1)
{
printf("对不起!没有找到您要删除的商品信息!");
}
else {
for (int i = index; i<count; i++)
{
list[i] = list[i + 1];
count--;
}
}
}

24,854

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧