C语言判断输出3个数字中最大数字的小小小程序 能不能告诉我为什么总得不到正确结果呢

来源:百度知道 编辑:UC知道 时间:2024/06/14 08:19:43
#include<stdio.h>
void main()
{
int a,b,c,max;
scanf("%d%d%d",&a,&b,&c);
max= a>=b?a>=c?a:c:b>=c?b:c;
printf("The biggest number is %d",max);
}
那应该怎么写才算正确的呢?

xlw55说的不对哦!
刚刚试了上面的程序,完全没有问题啊!可以输出最大数字!
不过如果写成下面这样的话会看起来好一些。
max = (a>=b) ? (a>=c?a:c) : (b>=c?b:c);

题目看错了,实在抱歉。

请见谅,smhtt
旷世浮萍 说得不错,误导你了

可能是你运行的环境有问题吧,我在tc2.0上完美运行,还有就是你那个程序本来就没有什么问题的,楼上他们都乱说

你的程序完全正确。
(是不是你的机子是C++,如果是,那你就错了,题目说清楚)
(在C++上:
#include <iostream>
using namespace std;
int main (void)
{int a,b,c,max;
cin>>a>>b>>c;
max=a>=b?a>=c?a:c:b>=c?b:c;//和C一样
cout<<"The biggest number is "<<max;
cin>>a;//在c++中运行结束后小屏幕会跳回后台,用它把它停住。
return 0;
}
在DEV-C++4.9.9.2上通过)

可能是编译环境问题