#include<stdio.h> int main() { int a,b,c,max; scanf("%d%d%d",&a,&b,&c); if (a>b) max=a; else b=max;

我要确定三个数中的最大值,请问哪里出错了,该怎么改,谢谢!

你的目标是确定三个数中的最大值,但好像你只比较了a,b两个数。头文件后不用那个int吧,还有就是主函数没有后大括号。下面是我改后的程序。
#includ<stdio.h>
main()
{
int a,b,c,max;
scanf("%d%d%d",&a,&b,&c);
if (a>b)
max=a;
else
b=max;
if(max>c)
max=max;
else
max=c;
此处为后大括号(不好意思了,我的手机不能输大括号,呵呵)
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-04-07
#include<stdio.h>
int main()
{
int a,b,c,max;
scanf("%d%d%d",&a,&b,&c);
if(a>b&&a>c)
max=a;
else if(b>a&&b>c)
max=b;
else
max=c;
printf("三个数中最大的是:%d\n",max);
return 0;
}

显然你的判断少了追问

结果好像不正确耶,你的程序得出的是最小值···

追答

是最大值啊 我用的是visual c++ 的编译器

第2个回答  2011-04-07
if (a>b) max=a; else max=b;
if (c > max) max = c;
printf("max = %d\n",max);
第3个回答  2011-04-07
#include<stdio.h>
int main()
{
int a,b,c,max;
scanf("%d%d%d",&a,&b,&c);
if (a>=b)
max=a;
else max=b;
if(max<c) max=c;
printf("MAX= %d\n",max);
return 0;
}
第4个回答  2011-04-07
#include<stdio.h>
void main()
{int a,b,c,max;
scanf("%d,%d,%d",&a,&b,&c);
if(a>b)
max=a;
else
max=b;
if(max<c)
max=c;
printf(''max=%d",max);
}
相似回答