首页 > 代码库 > C语言理论作业—2

C语言理论作业—2

1.C语言基本数据类型及其占用的内存空间大小分别是:int:4字节,short[int]:2字节,long[int]:4字节,unsigned[int]:4字节,unsigned short[int]:2字节,unsigned long[int]:4字节,char:1字节,float:4字节,double:8字节。
2.算数运算符有:+,?,*,/,%,++,??。
3.关系运算符有:>,<,==,>=,<=,!=,<>。
4.逻辑运算符的有限顺序是:!,&&,||。
5.赋值运算符有:=,+=,-=,*=,/=,%=。
6.char c=132;printf("%d",c);
解:132转换为二进制为:10000100,按位取反加1:01111011+1=01111110 换算为10进制为-124.
7.int a=7;printf("%d",a?1);
解:7:00000000 00000000 00000000 00000111
   -7:11111111 11111111 11111111 11111001(取反加一)
   a>>1:111111111 11111111 11111111 1111100(右移一位)
   -00000000 00000000 00000000 00000100(取反进一)
   所以向右移1位为-4.
8.int a=7;int a=8;printf("%d",a&b);
解:a=7:00000000 00000000 00000000 00000111
    b=8:00000000 00000000 00000000 00001000
    因为没有相同为1的项
    所以输出值为0.
9.int a=7;int b=8;printf("%d",a^b);
解:a=7:00000000 00000000 00000000 00000111
    b=8:00000000 00000000 00000000 00001000
           00000000 00000000 00000000 00001111
    所以输出值为15.

C语言理论作业—2