触手们,我又来送分了.老谭C语言第四版,第四章习题10.求改

第一个要求很简单,用if语句轻松搞定.第二要求我想了半天,写出的程序通不过编译.求改#include<stdio.h>intmain(){doublei,x,z;prin... 第一个要求很简单,用if语句轻松搞定.
第二要求我想了半天,写出的程序通不过编译.求改

#include <stdio.h>
int main()
{
double i,x,z;
printf("利润:");
scanf("%lf", &i);
if(i%100000==0) i=i-1;
z=i/100000;
i+=i;
switch(z)
{
case 0 : x=i*0.1;break;
case 1 : x=100000*0.1+(i-100000)*0.075;break;
case 2 : x=100000*0.1+100000*0.075+(i-200000)*0.05;break;
case 3 : x=100000*0.1+100000*0.075+(i-200000)*0.05;break;
case 4 : x=100000*0.1+100000*0.075+200000*0.05+(i-400000)*0.03;break;
case 5 : x=100000*0.1+100000*0.075+200000*0.05+(i-400000)*0.03;break;
case 6 : x=100000*0.1+100000*0.075+200000*0.05+200000*0.3+(i-600000)*0.015;break;
case 7 : x=100000*0.1+100000*0.075+200000*0.05+200000*0.3+(i-600000)*0.015;break;
case 8 : x=100000*0.1+100000*0.075+200000*0.05+200000*0.3+(i-600000)*0.015;break;
case 9 : x=100000*0.1+100000*0.075+200000*0.05+200000*0.3+(i-600000)*0.015;break;
case 10 : x=100000*0.1+100000*0.075+200000*0.05+200000*0.3+400000*0.015+(i-1000000)*0.01;break;
}
printf("\n*** *** *** ***\n");
printf("提成:%lf", &x);
system("puase");
return 0;
}

顺便帮我看下这样写有没有问题......
展开
 我来答
dufenglei908
2012-11-29 · TA获得超过6372个赞
知道大有可为答主
回答量:1449
采纳率:60%
帮助的人:755万
展开全部
switch语句只能针对整型数据,你的x是double类型,因此不能编译,你只需要调整一下,把x变成整型,并和题目要求对应上就可以了。思路是对的,没有问题
更多追问追答
追问
后面的错误更多了 还有if(i%100000==0) i=i-1; 里面的百分号也报错
追答
模运算,也就是百分号也是一个整数运算,你可以把定义修改成这样:
int i, z;
double x;
再就是这一句有问题
printf("提成:%lf", &x);

&x修改为x
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式