1、第2次作业指南 1. 在C 语言中,复合语句要用一对()括起来。 A. 方括号 B. 圆括号 C. 大括号 D. 尖括号 [提示]参考讲稿3.1.1-4 2. C 语言中,下面哪项是不合法的标识符?() A. user B. switch C. _345 D. Abc [提示]参考讲稿2.1.1 3. 以下说法中正确的是() A. C 语言比其他语言高级 B. C 语言不用编译就能被计算机执行 C. C 语言以接近英语国家的自然语言和数学语言作为语言的表达形式 D. C 语言出现的最晚,具有其他语言的一切优点 [提示]这个留给自己发挥吧,你
2、觉得不用翻书考证就能看出来的就是答案啦 4. 若变量x、y 已正确定义并赋值,以下符合C 语言语法规则的语句是() A. ++x, y = x--; B. x + 1 = y; C. x = x + 10 = x + y; D. double(x)/10 [提示]自己编个小程序,包含上述语句,然后编译一下,编译器报错的地方就是不对的。以后涉及程序、程序段、语句、表达式的题目都可以这样做。 5. 下列程序的输出结果为() void main() { int x, y, z; x = y = 1; z = x++, y++, ++y; printf(“%d, %d
3、 %d\n”, x, y, z); } A. 2, 3, 3 B. 2, 3, 2 C. 2, 3, 1 D. 2, 2, 1 [提示]这个不用提示吧,上机运行一下就知道了。程序设计课要动手,干看是学不会的哟。 6. 数值029 是一个() A. 八进制数 B. 十六进制 C. 十进制 D. 非法数 [提示]参考讲稿2.2.2 7. 逻辑运算符两侧运算对象的数据类型() A. 只能是0 或1 B. 只能是0 或非0 正数 C. 可以是整型或字符型数据 D. 可以是任何类型的数据 [提示]自己编个小程序,写几个逻辑表达式,将C语
4、言中所有的数据类型都放到逻辑表达式中试一试。 8. 对于int a, 表达式1 <= a <= 5 的值是() A. 0 B. 1 C. 不定 D. 表达式语法有误 [提示]自己编个小程序,…… 9. 执行下列语句段后x 的值为() int a = 14, b = 15, x; char c = ‘A’; x = (a && b) && (c < ‘a’) A. TRUE B. FALSE C. 0 D. 1 [提示]自己编个小程序,包含上述程序段,然后在debug中观察一下x的值。如果不会用debug,请看3月5日的课程,老师有很多演示。
5、 10、x, y, z 被定义为int 型变量,若从键盘为其输入数据,则正确的输入语句是() A. input x, y, z B. scanf(“%d%d%d”, &x, &y, &z); C. scanf(“%d%d%d”, x, y, z); D. read(“%d%d%d”, &x, &y, &z); 提示:此题考察格式化输入函数scanf 的用法。 11、若w=1, x = 2, y=3, z = 4 ,则条件表达式w < x ? w: y < z ? y : z 的值是() A. 1 B. 2 C. 3 D. 4 提示:此题考察条件运算符
6、的结合性。
12、给定如下程序
#include
7、 0, d;
d = ! a && !b || !c;
printf(“%d\n”, d);
}
A. 1 B. 0 C. 编译出错 D. -1
提示:此题考察逻辑运算符的优先级。
14、下列程序的输出结果是()
#include
8、rintf(“%d”, c); default: printf(“$\n”); } } A. 50, 60 B. 50, $ C. 60, $ D. 50, 60, $ 提示:此题考察switch-case 结构跳转规律。 15、给定如下程序段,请选择描述正确的说法() int i = 9; while(i = 0) i--; A. while 循环执行9 次 B. 循环体语句执行一次 C. 循环体语句一次也不执行 D. 循环是无限循环 提示:此题考察循环结构,特别是循环条件的判断。 16、设n 为整型变量,则for(n =
9、 10; n >= 0; n--) 循环的次数为() A. 9 B. 10 C. 11 D. 12 提示:此题考察对for 循环中三个表达式的理解。 17、对表达式for( 表达式1; ; 表达式3)可以理解为() A. for(表达式1; 0; 表达式3) B. for(表达式1; 1; 表达式3) C. for(表达式1; 表达式1; 表达式3) D. for(表达式1; 表达式3; 表达式3) 提示:此题考察对for 循环中三个表达式的理解。 18、以下能正确定义一维数组的选项是() A. int a[5] = {0, 1, 2,
10、3, 4, 5}; B. char a[] = {0, 1, 2, 3} C. char a = {‘A’, ‘B’, ‘D’} D. int a[5] = “0123”; 提示:此题考察一维数组初始化的规定。 19. 已有定义int x[3][2],以下能正确引用数组元素的选项是() A. x[2][2] B. x[1][2] C. x[2][1] D. x[0][2] 提示:此题考察数组下标的合法取值范围。 20. 有以下语句,int x; char c[10]; 则正确的输入语句是() A. scanf(“%d%s”, x, &c); B. scanf(“%d%s”, &x, &c); C. scanf(“%d%s”, x, c); D. scanf(“%d%s”, &x, c); 提示:此题考察标准输入函数scanf 对普通变量和数组变量的输入约定。 参考答案: CBCAC DCBDB ABADC CBACD






