C++程序显示没有错误,为什么运行显示不出结果?

#include<stdio.h>voidmain(){intprice,y;printf("inputprice:\n");scanf("%d%d",&price,&y... #include<stdio.h>
void main()
{
int price, y;
printf("input price: \n");
scanf("%d%d",&price, &y);
switch(price/1000){
case 0:{y=200;
printf("%d\n", y);};break;
case 1:{y=200+(price-1000)*10%
printf("%d\n", y);};break;
case 2:{y=300+(price-2000)*15%
printf("%d\n", y);};break;
case 3:{y=300+(price-2000)*15%
printf("%d\n", y);};break;
case 4:{y=600+(price-4000)*20%
printf("%d\n", y);};break;
case 5:{y=600+(price-4000)*20%
printf("%d\n", y);};break;
case 6:{y=600+(price-4000)*20%
printf("%d\n", y);};break;
case 7:{y=600+(price-4000)*20%
printf("%d\n", y);};break;
default:{y=1400+(price-8000)*25%
printf("%d\n", y);};break;
}
}
展开
 我来答
憨笑大猪
2015-11-06 · TA获得超过1556个赞
知道大有可为答主
回答量:1351
采纳率:50%
帮助的人:1801万
展开全部
语法错误。
case 1:{y=200+(price-1000)*10%

最后的% 你认为是百分之10,但是 C是作为 %运算符的
y=200+(price-1000)*10%
printf("%d\n", y);
这句话就变成了一句给y的赋值语句
y=200+(price-1000)*10% printf("%d\n", y);

修改方式,把% 改成 /100,然后后面加上分号。
追问
input price:1000
2000,按回车之后还是没有结果
追答

你都改正了错误了没?

#include<stdio.h>
void main()
{
int price, y;
printf("input price: \n");
scanf("%d%d",&price, &y);
switch(price/1000){
case 0:{y=200;
   printf("%d\n", y);};break;
case 1:{y=200+(price-1000)*0.1;
   printf("%d\n", y);};break;
case 2:{y=300+(price-2000)*0.15;
   printf("%d\n", y);};break;
case 3:{y=300+(price-2000)*.15;
   printf("%d\n", y);};break;
case 4:{y=600+(price-4000)*.2;
printf("%d\n", y);};break;
case 5:{y=600+(price-4000)*.2;
   printf("%d\n", y);};break;
case 6:{y=600+(price-4000)*.2;
   printf("%d\n", y);};break;
case 7:{y=600+(price-4000)*.2;
   printf("%d\n", y);};break;
default:{y=1400+(price-8000)*.25;
    printf("%d\n", y);};break;
}
}

你试一试这段代码

输入的时候  用 input price :  1000 空格 2000 回车 试一试

lkjhggv
2015-11-06 · TA获得超过3063个赞
知道大有可为答主
回答量:1550
采纳率:66%
帮助的人:1312万
展开全部
scanf("%d%d",&price, &y);
scanf("%d %d",&price, &y); 两个%d中间加个空格,输入时也输入个空格
追问
加了空格,还是运行不出结果~
输出price,要输出y~
追答
1,大括号右边不要加;,这里加了也没什么问题,因为当做一个空语句
2,y = 200 + (price - 1000) * 10 % printf("%d\n", y);这句看不懂,为什么要%一个函数的返回值
3,在return之前加上 system("pause"); 以便查看结果,并且包含头文件#include
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式