一道C语言题目

当a=1,b=3,c=5,d=4时,执行以下程序
if(a<b)
if(c<d)x=1;
else if(a<c)
if(b<d)x=2;
else x=3;
else x=6;
else x=7;
最后x的值是多少?
答案给的是1,我怎么看都是2.

public static void main(String[] args) {
int a = 1;
int b = 3;
int c = 5;
int d = 4;
int x;
if (a < b) {
if (c < d) {
x = 1;
} else if (a < c) {
if (b < d) {
x = 2;
} else
x = 3;
} else
x = 6;
} else
x = 7;
System.out.println(x);
}
如果程序是这样的话,结果输出 x是等于2 我测试了
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-05-14
本来就是2!!!
如果题你没抄错,那就是答案错了。
第2个回答  2012-05-14
别太迷信答案。。。
第3个回答  2012-05-14
你太相信那书上的的了
第4个回答  2012-05-14
#include <stdio.h>
void main()
{
int a=1,b=3,c=5,d=4;
int x;
if(a<b)
if(c<d)x=1;
else if(a<c)
if(b<d)x=2;
else x=3;
else x=6;
else x=7;
printf("x=%d\n",x);

}

x=2
Press any key to continue
编译输出为2
第5个回答  2012-05-15
答案是为2.
相似回答