[问题已解决][求助] C语言的题目
1.下述程序的输出结果是
#include<stdio.h>
void main()
{ char a=3,b=6;
char c=a^b<<2;
printf("\n%d",c);
}
2. 设x和y都是int类型,且x=100,y=200,则 printf(“%d%d\n”,(x,y));的输出结果是
[此贴子已经被作者于2006-7-15 14:08:29编辑过]
昨天第一次来这个论坛,没想到大家都很热心,相信在这个论坛,我会慢慢成长的,尽管现在对与C还不是很懂,希望在不久的将来我也可以帮助别人
第一题中,(b << 2) => (b = 24) => binary is: 11000
(a ^ b) => 011 ^ 11000 => result: 11011, so => (c = 27)
还是不太明白,左移是怎么移的啊?异或又是怎么算的呢?
至于第二题, 我是觉得是逗号表达式,所以就是:printf("%d%d\n",y);运行后:2001999
1999是随便出来的一个数,我是这么想的,不知道对不对?
可是书上的答案却是200