C语言编程中,调试出现error C2143: syntax error : missing ';' before 'type'该错误如何解决?谢谢啦~ 10
程序:
#include<stdio.h>
char main()
{
float max(float a,float b,float c,float d);
float min(float a,float b,float c,float d);
float a,b,c,d,m,n;
scanf("%f%f%f%f",&a,&b,&c,&d);
float max(float a,float b,float c,float d);
{
if(m==a) printf("最大销售额对应第一季度");
else if(m==b) printf("最大销售额对应第二季度");
else if(m==c) printf("最大销售额对应第三季度");
else printf("最大销售额对应第四季度");
}
float min(float a,float b,float c,float d);
{
if(n==a) printf("最小销售额对应第一季度");
else if(n==b) printf("最小销售额对应第二季度");
else if(n==c) printf("最小销售额对应第三季度");
else printf("最小销售额对应第四季度");
}
return 0;
}
float max(float a,float b,float c,float d)
{
float x,y,z,m;
x=a>b?a:b;
y=x>c?x:c;
z=y>d?y:d;
m=z;
return m;
}
float min(float a,float b,float c,float d)
{
float p,q,s,n;
p=a<b?a:b;
q=p<c?p:c;
s=q<d?q:d;
n=s;
return n;
}
调试结果:
Compiling...
a.c
D:\a.c(24) : error C2143: syntax error : missing ';' before 'type'
D:\a.c(32) : error C2143: syntax error : missing ';' before 'type'
执行 cl.exe 时出错.
a.obj - 1 error(s), 0 warning(s) 展开
错误比较多,你看下边的注释吧,如果还不对请追问,可行望采纳:
#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;
}
m、n没有赋初值就拿来使用了。
把第二个float max(float a,float b,float c,float d);和float min(float a,float b,float c,float d);删除。
2020-02-28
1.第6行应如下:scanf("%f,%f,%f,%f",&a,&b,&c,&d);
2.不能在函数内定义函数
改成int就可以运行了,其他问题没仔细看