C语言 笔试题1
题目用到第七课的知识
1.a=1,b=2,不增加新的变量交换ab的值。
2.、已知short a=45978,二进制为1011001110011010,请将第8位至13位修改为110101,其他位保持不变。
最后转化的结果为46490.
过程如下:
3.、将第1题通过位操作来实现交换
int a=1;
int b=2;
a=a<<1;
b=b>>1;
4、 坐标点 short[高x,低y]
完成:1将x,y的值分别存储到short point中[【x】【y】]
2、将x,y的值分别出从point中
5、试分析如下i,j,result的值:
1、int i=0,j=0;
int result= i++ && j++;
result=0,i=1,j=0
因为先取i的值,所以result=0,而且&&已经判断i=0,命题为假,所以不会继续计算j++,因此j=0
int result= ++i && ++j;
result=1,i=1,j=1
3、int i=0,j=0;int result= i++ || j++;
result=0,i=1,j=1
4、int i=0,j=0;int result= ++i || ++j;
result=1,i=1,j=0
6、通过三目运算符求: int a=1,b=2,c=0;拓展:求a,b,c中最大值
这个太简单了。