C语言的选择题 高手帮我做下给我答案 我对下 我自己的答案对不

来源:百度知道 编辑:UC知道 时间:2024/06/08 16:20:58
一、 单项选择题
1. 下列选项中属于C语言字符常量的是()
A.‘abc’ B. “\n” C. ‘a’ D. ‘a\0’
2. 下列选项中属于字符串常量的是 ( )
A . ABC B.”ABC” C.’abc’ D.’a’
3. 在PC机中,’\n’在内存占用的字节数为()
A. 1 B.2 C. 3 D. 4
4. 下列字符串常量中,占用内存字节数为2的字符串常量是()
A. “12” B.”1” C.”1\0” D.”\n\n”
5.字符串”ABC”在内存占用的字节数是()
A. 3 B. 4 C. 6 D. 8
6.在C语言中,合法的长整形常量是()
A. 0L B. 4962 C. 0.054838743 D.2.1869e10
7.下列符号常量的定义中正确的是()
A # define N3 B define N 3 C # define N_1 3 D #define N 1 3
8.设有宏定义”#define R 2+3”,则R*R的宏替换结果正确的是()
A (2+3)*(2+3) B 2+3*2+3 C 5*5 D 5.0*5.0
9. char型常量在内存中存放的是()
A ASCII代码值 B 二进制代码值 C 八进制代码值 D十进制代码值
10.下列说法中错误的是()
A 整形变量可以存放字符常量的值 B字符型变量可以存放任意整形常量的值
C 变量必须先定义,后使用 D 字符串的长度不等于它占用的字节数
11.设整形变量i的值为3,则表达式i---i的值为()
A 0 B 1 C 2 D 3
12 .设整形变量a,b,c均为2, 表达式a+++b+++c++的值是()

1.C 字符常量是用单引号括起来的一个字符.

2.B 字符串常量是用一对双引号括起来的一列字符序列.

3.A 因为'\n'是个字符常量,字符常量占1个字节的内存.

4.B "1"是一个字符串,实际存储的是两个字符分别为'1'和'\0',而每一个字符常量占一个字节,故而"1"占两个字节.这就是为什么'a'和"a"不同的缘故,'a'是个字符常量,仅占一个字节,而"a"里面还有个'\0'作为字符串结束标志的字符.

5.B 根据上一题的解,很显然"ABC"占4个字节.

6.A 长整型常量的表示形式一般在后面加个L.占4个字节,取数范围在-2147483648--2147483647

7.C 宏定义一般形式#define N 3 这题中A选项N与3间没空格;B选项无#号;C选项标识符是N_1;D选项1和3之间不能有空格.

8.B 宏替换就是将字符串原样代入,如果你想得到(2+3)*(2+3)就必须改为(R)*(R)

9.B 这没什么好说的在内存中都是以二进制形式存放的.

10.B 字符型变量只能存储0--255之间的整型常量.否则溢出.

11.A 自加自减运算符是右结合,所以i---i相当于(i--)-i;而对于这种形式的表达式的求解是先按自减之前的值进行整个运算后再自减,也就是3-3=0;然后i的值变成2.扩充说明下:int k=3;k+++k+++k++这个表达式相当于(k++)+(k++)+(k++)表达式的值为9,k值为6;如果是(++k)+(++k)+(++k)这个表达式的值为18,k值为6.

12.A a+++b+++c++相当于(a++)+(b++)+(c++)很容易得出这个表达式的值6

13.D 这是个关系表达式10!=9是真即为1.(关系表达式的结果假就是0真就是1,就这两种结