问题
填空题
以下程序运行后的输出结果是______。
main()
int a=3,b=4,c=5,t=99;
if(b<a&&a<c)t=a;a=c;c=t;
if(a<c&&b<c)t=b;b=a;a=t
printf("%d%d%d\n",a,b,c);
答案
参考答案:4 5 99
解析: a、b、c的初值为3、4、5,t的初值为99,if语句的条件“b<a&&b<c”为假,不执行“t=a;”,但紧随其后的“a=c;c=t;”与此if语句无关,仍被执行。此时a的值为5,b的值仍是4,c的值为99。再执行第二个if语句,由于此时“a<c&&b<c”为真,执行“t=b;”,紧随其后的“b=a;a=t;”与此if语句无关,也被执行。此时a的值为4,b的值是5,c的值为99。因此输出结果是:4 5 99。