回 帖 发 新 帖 刷新版面

主题:求助


[code=c]
#include<stdio.h>

int maxqsum(int * s, int n, int m)
{
int i = 1;
for(; i < n; ++i )
{
if( s[i] > s[0] )
{
int temp = s[i];
s[i] = s[0];
s[0] = temp;
}
}
return m ?s[0] + maxqsum( s+1, n-1, --m ) : 0;
}
void main()
{
int num[6] = {1,2,6,4,5,3 };
printf( "%d\n", maxqsum( num, 6,-1 ) );
}
[/code]
请问下那个return 语句用的什么表达式  感觉又不像三木运算符

回复列表 (共1个回复)

沙发

那是一个条件运算符,是一个三目运算符。形式一般是:表达式1?表达式2:表达式3;就是当表达式1为真时,执行表达式2,为假时执行表达式3.

我来回复

您尚未登录,请登录后再回复。点此登录或注册