C语言编程求救,在线等答案!!!!!!

#include"stdio.h"main(){intx;floatprice;doublediscount,total;printf("输入顾客购买商品数量:");sc... #include "stdio.h"
main()
{
int x;
float price;
double discount,total;
printf("输入顾客购买商品数量: ");
scanf("%d",&x);
printf("输入顾客购买商品价格: ");
scanf("%f",&price);
if (x<5)
printf("对不起,不打折");
else if (5<=x && x<10)
discount=price*0.01;
total=price-discount;
printf("打折后应付价格为: %f\n",total);
else if (10<=x && x<20)
discount=price*0.02;
total=price-discount;
printf("打折后应付价格为: %f\n",total);
else if (20<=x && x<30)
discount=price*0.04;
total=price-discount;
printf("打折后应付价格为: %f\n",total);
else
discount=price*0.06;
total=price-discount;
printf("打折后应付价格为: %f\n",total);
}
这是一道普通的买东西按数量打折的题目,我运行程序格式什么都是对的,但是就是 第2个和第3个else if,最后一个else3个行都显示错误,
显示的英文是:illegal else without matching if
请高手帮我看看,谢谢了,方便解释下那个英文是什么意思
不对啊,else if 是不需要加大括号的
而第一个if后面只有一个语句 大括号可以省略。。。。
展开
 我来答
百度网友dab4b28f1
2007-10-31 · TA获得超过291个赞
知道答主
回答量:308
采纳率:0%
帮助的人:0
展开全部
不加大括号程序知道你的else if 到哪里结束?
如果是只有一句的话大括号可以省略
illegal else without matching if意思就是else 缺少if
没有if不能单独使用else

#include "stdio.h"
main()
{
int x;
float price;
double discount,total;
printf("输入顾客购买商品数量: ");
scanf("%d",&x);
printf("输入顾客购买商品价格: ");
scanf("%f",&price);
if (x<5)
printf("对不起,不打折");
else if (5<=x && x<10)
{discount=price*0.01;
total=price-discount;
printf("打折后应付价格为: %f\n",total); }
else if (10<=x && x<20)
{discount=price*0.02;
total=price-discount;
printf("打折后应付价格为: %f\n",total); }
else if (20<=x && x<30)
{discount=price*0.04;
total=price-discount;
printf("打折后应付价格为: %f\n",total); }
else
{discount=price*0.06;
total=price-discount;
printf("打折后应付价格为: %f\n",total); }
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式