C语言出现 error C2143: syntax error : missing ';' before 'constant' 怎么解决??

程序出现C:\ProgramFiles\MicrosoftVisualStudio\MyProjects\11\11.cpp(8):errorC2143:syntaxer... 程序出现
C:\Program Files\Microsoft Visual Studio\MyProjects\11\11.cpp(8) : error C2143: syntax error : missing ';' before 'constant'
C:\Program Files\Microsoft Visual Studio\MyProjects\11\11.cpp(9) : error C2143: syntax error : missing ';' before 'constant'
C:\Program Files\Microsoft Visual Studio\MyProjects\11\11.cpp(10) : error C2143: syntax error : missing ';' before 'constant'
C:\Program Files\Microsoft Visual Studio\MyProjects\11\11.cpp(12) : error C2143: syntax error : missing ';' before 'constant'
执行 cl.exe 时出错.#include <stdio.h>

下面是程序,请问我哪里错了?找了好久没找到啊
int main()
{
int i;
double a,b,c,d,e,f,cash;
a=0.1*i;
b=100000*0.1+(i-100000)0.075;
c=100000*0.1+100000*0.075+(i-200000)0.05;
d=100000*0.1+100000*0.075+200000*0.05+(i-400000)0.03;
e=100000*0.1+100000*0.075+200000*0.05+200000*0.03+(i-600000)*0.015;
f=100000*0.1+100000*0.075+200000*0.05+200000*0.03+400000*0.01+(i-1000000)0.01;
printf("请输入本月利润:/n");
scanf("%d",&i);
if(i<=100000)
cash=a;
else if(i<=200000)
cash=b;
else if(i<=400000)
cash=c;
else if(i<=600000)
cash=d;
else if(i<=1000000)
cash=e;
else if(1000000<i)
cash=f;
printf("本月奖金应发:%10.2f",cash);
return 0;
}
展开
 我来答
斩天及
2014-04-16 · TA获得超过8832个赞
知道大有可为答主
回答量:8460
采纳率:0%
帮助的人:3903万
展开全部

    错误比较多,你看下边的注释吧,如果还不对请追问,可行望采纳:

#include <stdio.h>//忘了加头文件

int main()

{

    int i;

    double a,b,c,d,e,f,cash;


    //这2行给你写前面了,具体原因往下看

    printf("请输入本月利润:\n");//反斜杠打错了吧?

    scanf("%d",&i);//你不先给 i 赋值,就直接使用 i ?

    a=0.1*i;


    //下边这几行有几个乘号忘了写啦

    b=100000*0.1+(i-100000)*0.075;

    c=100000*0.1+100000*0.075+(i-200000)*0.05;

    d=100000*0.1+100000*0.075+200000*0.05+(i-400000)*0.03;

    e=100000*0.1+100000*0.075+200000*0.05+200000*0.03+(i-600000)*0.015;

    f=100000*0.1+100000*0.075+200000*0.05+200000*0.03+400000*0.01+(i-1000000)*0.01;


    if(i<=100000)

        cash=a;

    else if(i<=200000)

        cash=b;

    else if(i<=400000)

        cash=c;

    else if(i<=600000)

        cash=d;

    else if(i<=1000000)

        cash=e;

    else if(1000000<i)

        cash=f;


    //你声明的是double类型,请使用"%lf",而不是"%f",还有最好加个回车

    printf("本月奖金应发:%10.2lf\n",cash);

    return 0;

 }


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

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式