请大家帮看一下这个C程序,问题在哪??请详细说明一下!谢谢了!
来源:百度知道 编辑:UC知道 时间:2024/08/20 22:33:07
main()
{ float a,b;
int c;
scanf(“%f,%f”,&a,&b);
c=max(a,b);
printf(“max is %d\n”,c);
}
max(float x,float y) 输入:1.5,2.5
{ float z; 输出: max is 2
z=x>y?x:y; return(z);}
{ float a,b;
int c;
scanf(“%f,%f”,&a,&b);
c=max(a,b);
printf(“max is %d\n”,c);
}
max(float x,float y) 输入:1.5,2.5
{ float z; 输出: max is 2
z=x>y?x:y; return(z);}
我给你修改了:
main()
{
float a,b;
int c;
int max(float, float);
scanf("%f%f",&a,&b);
c=max(a,b);
printf("max is %d\n",c);
}
int max(float x,float y)
{
int z;
z=x>y?x:y;
return(z);
}
输入1.5 2.5
输出2
毕业好多年了,看到真是亲切,大概忘了,好像是变量定义的问题,a,b是浮点型变量,c是整型变量。在输出的时候%d是整型的。后面一部分什么东东啊,就看不懂了,你的表达有错误。
max(float x,float y) 输入:1.5,2.5
{ float z; 输出: max is 2
z=x>y?x:y; return(z);}
你的max返回的是float,输出是int型,就会自动帮你转类型。
main()
{ float a,b,c;
scanf(“%f,%f”,&a,&b);
c=max(a,b);
printf(“max is %f\n”,c);
}
或者
main()
{ float a,b;
scanf(“%f,%f”,&a,&b);
printf(“max is %f\n”,max(a,b));
}