帮看一下程序运行有错

来源:百度知道 编辑:UC知道 时间:2024/05/23 20:20:25
输入a,b,c 3个值,输其中最大者
#include <stdio.h>
void main()
{
float a,b,c;
scanf ("%f,%f,%f",&a,&b,&c);
if (a>b && a>c);
printf("%f\n",a);
if (b>c && b>a);
printf("%f\n",b);
if (c>b && c>a);
printf("%f\n",c);
}
运行以后输入23 45 12
结果是 23.00000 错在哪里?

注意 ,if (...)后面不要加分号。
注意 ,输入数字时要用逗号分隔,而不是空格。

程序修正如下:

#include <stdio.h>
void main()
{
float a,b,c;
scanf ("%f,%f,%f",&a,&b,&c);
if (a>b && a>c)//注意!!
printf("%f\n",a);
if (b>c && b>a)
printf("%f\n",b);
if (c>b && c>a)
printf("%f\n",c);
}

#include <stdio.h>

void main()
{
float a,b,c;
scanf ("%f%f%f",&a,&b,&c);
if (a>b && a>c)
printf("%f\n",a);
else if (b>c && b>a)
printf("%f\n",b);
else if (c>b && c>a)
printf("%f\n",c);
}