老问题了,用三目运算符(?:)求三个数的最大数.要求一条语句

mint 2004-03-31 12:25:32
老问题了,用三目运算符求三个数的最大数.要求一条语句
我记不清,请讲讲.
...全文
1409 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
junnyfeng 2004-03-31
  • 打赏
  • 举报
回复
是吗,呵呵,你对


我无语,以后拒做这样简单的题目
oyd 2004-03-31
  • 打赏
  • 举报
回复 1
x>(y>z?y:z)?x:(y>z?y:z);

仅此一句,其余的都是多此一举
nolen0 2004-03-31
  • 打赏
  • 举报
回复
一条语句实现如下:

#include<iostream>
using namespace std;

void main()
{
int x,y,z;
cout << "please intput three numbers:";
cin >> x >> y >> z;
cout << "max number is:";

// one statement
int max=x>(y>z?y:z)?x:(y>z?y:z);
// one statement

cout<<max<<endl;

}
w3guy 2004-03-31
  • 打赏
  • 举报
回复
junnyfeng(听风) 你的不对,如果a = 2, b=1, c = 3 你的程序返回2
xiemengjun 2004-03-31
  • 打赏
  • 举报
回复
max = a>b?(a>c?a:c):(b>c?b:c);
w3guy 2004-03-31
  • 打赏
  • 举报
回复
max = a>b?(a>c?a:c):(b>c?b:c);
junnyfeng 2004-03-31
  • 打赏
  • 举报
回复
唉,你们怎么总爱对此一举呢

max=a>b?a:b>c?b:c;
sunrui 2004-03-31
  • 打赏
  • 举报
回复
int a, b, c;
...
int k = (a > b)?((a > c)?a:c):((b > c)?b:c);
KingI 2004-03-31
  • 打赏
  • 举报
回复
max=(b=(a=(a>b)? a : b)>c ? a : c)>c? b : c;
aheadyes 2004-03-31
  • 打赏
  • 举报
回复
求最大数的更简单.
int max = x>y?(x>z?x:z):(y>z?y:z)
junnyfeng 2004-03-31
  • 打赏
  • 举报
回复
int get_max(int a,int b, int c)
{
return (a>b?a:b>c?b:c);
}


aheadyes 2004-03-31
  • 打赏
  • 举报
回复
//三个数从大到小输出

#include<iostream>
using namespace std;
void OutPut_Descending(int x,int y,int z)
{ // 三目运算和逗号表达式
int a[3],k;
a[0] = x;
a[1]= k = ( x>y?(a[0]=y,x) : y);
a[2] = a[1]>z ? ( z>a[0]?(a[1]=z):(a[1]=a[0],a[0]=z) ,k ) :z;
for(int i=2; i>=0; --i)
cout << a[i] << ",";
}

int main()
{
int x,y,z;
cout << "please intput three numbers:";
cin >> x >> y >> z;
OutPut_Descending( x, y, z);
}
w3guy 2004-03-31
  • 打赏
  • 举报
回复
没什么争的,放到编译器运行一下,谁对谁错就清楚 :D
ctgu420 2004-03-31
  • 打赏
  • 举报
回复
x>(y>z?y:z)?x:(y>z?y:z)

69,373

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧