#include <stdio.h>
int main()
{
int a ,m=10,n=9;
a=(--m==n++)?
--m:++n;
printf("%d\n",a);
return 0;
}
#include <stdio.h>
int main()
{
int a ,m=10,n=9;
a=(--m==n++)?
--m:++n;
printf("%d\n",a);
return 0;
}
举个例子:
x>y ? x:y; 这个语句的意思就是比较x,y的大小,如果语句正确返回x,否则返回y.
题目中 a=(--m=n++)? --m:++n; 意思也是一样,判断--m是否与n++的值相等,相等返回--m,否则返回++n,--m先执行--即等于9,n++先执行n=9再算++,所以等式成立都等于9,返回--m,--在前先执行,因为m此前执行了--,值为9,所以再执行--,值就为8了。