[计算机类试卷]国家二级C语言机试(C语言程序设计)模拟试卷10及答案与解析.doc

上传人:王申宇 文档编号:497937 上传时间:2018-11-30 格式:DOC 页数:17 大小:51.50KB
下载 相关 举报
[计算机类试卷]国家二级C语言机试(C语言程序设计)模拟试卷10及答案与解析.doc_第1页
第1页 / 共17页
[计算机类试卷]国家二级C语言机试(C语言程序设计)模拟试卷10及答案与解析.doc_第2页
第2页 / 共17页
[计算机类试卷]国家二级C语言机试(C语言程序设计)模拟试卷10及答案与解析.doc_第3页
第3页 / 共17页
[计算机类试卷]国家二级C语言机试(C语言程序设计)模拟试卷10及答案与解析.doc_第4页
第4页 / 共17页
[计算机类试卷]国家二级C语言机试(C语言程序设计)模拟试卷10及答案与解析.doc_第5页
第5页 / 共17页
点击查看更多>>
资源描述

1、国家二级 C语言机试( C语言程序设计)模拟试卷 10及答案与解析 一、选择题 1 已知大写字母 A的 ASCII码是 65,小写字母 a的 ASCII码是 97。以下不能将变量 c中的大写字母转换为对应小写字母的语句是 ( A) c (A C)26 a ( B) c C 32 ( C) c C A a ( D) c (C一 A) 26 a 2 以下选项中非法的 C语言字符常量是 ( A) b ( B) 007 ( C) aa ( D) xaa 3 以下选项中非法的 C语言字符常量是 ( A) 9 ( B) 09 ( C) x09 ( D) x9d 4 若有定义语句 char c= 101;则

2、变量 C在内存中占 ( A) 2个字节 ( B) 3个字节 ( C) 1个字节 ( D) 4个字节 5 若有以下程序,则程序的输出结果是 #include main() char c1, c2; c1 C 8 3; c2 9 0; printf(“ c d n”, c1, c2); ( A) H 9 ( B) H9 ( C) F9 ( D)表达式 不合法输出无定值 6 下面选项中合法的字符常量是 ( A) X ( B) abc ( C) X ( D) 7 以下叙述中正确的是 ( A)字符常量在内存中占 2个字节 ( B)转义字符要用双引号括起来,以便与普通的字符常量区分开 ( C)字符常量需要

3、用单引号括起来 ( D)字符常量是不能进行关系运算的 8 以下叙述中正确的是 ( A)字符变量在定义时不能赋初值 ( B)同一英文字母的大写和小写形式代表的是同一个字符常量 ( C)字符常量可以参与任何整数运算 ( D)转义字符用符号开头 9 若有定义语句: char a= 82;则变量 a ( A)包含 1个字符 ( B)说明不合法 ( C)包含 2个字符 ( D)包含 3个字符 10 有以下程序,程序的输出结果是 main() char c1 A, c2 Y; printf(“ d, d n“, c1, c2); ( A)输出格式不合法,输出出错信息 ( B) 65, 90 ( C) 65

4、, 89 ( D) A, Y 11 C语言中 char类型数据占字节数为 ( A) 2 ( B) 3 ( C) 1 ( D) 4 12 有以下程序,程序运行后的 输出结果是 main() char a H; a (a A&a Z)?(a 32): a; printf(“ c n“, A); ( A) H ( B) A ( C) h ( D) a 13 以下正确的字符串常量是 ( A) abc ( B) Olympic Games ( C) “ ( D) “ “ 14 若 X和 Y代表整型数,以下表达式中不能正确表示数学关系 x y 10的是 ( A) abs(x y) 10 ( B) x y

5、10&x y 10 ( C) !(x y) 10 !(y x) 10 ( D) (x y)*(x y) 100 15 数字字符 0的 ASCII值为 48,若有以下程序,程序运行后的输出结果是 main() char a 1, b 2; printf(“ c, “, b ); printf(“ d n“, b A); ( A) 3, 2 ( B) 50, 2 ( C) 2, 2 ( D) 2, 50 16 若有代数式 (其中 e仅代表自然对数的底数,不是变量 ),则以下能够正确表示该代数式的 C语言表达式是 ( A) sqrt(fabs(pow(n, x) pow(x, e) ( B) sqr

6、t(abs(nx ex) ( C) sqrt(fabs(pow(n, x) exp(x) ( D) sqrt(fabs(pow(x, n) exp(x) 17 表达式: (int)(double)9 2) 9 2的值是 ( A) 0 ( B) 4 ( C) 3 ( D) 5 18 若有定义语句: int x 12, y 8, z;在其后执行语句 z 0 9 x y;则 Z的值为 ( A) 1 9 ( B) 1 ( C) 2 ( D) 2.4 19 表达式 3 6 5 2 1 2 5 2的值是 ( A) 4 8 ( B) 3 3 ( C) 3 8 ( D) 4.3 20 有以下定义: int a

7、; long b; double x, y; 则以下选项中正确的表达式是 ( A) a (int)(x y) ( B) a x y ( C) (a*y) b ( D) y x y x 21 若有以下程序,编译时出现错误,你认为出错的是 #include main() int a 0, b 0, c 0, d; c (a b, b A) *第 4行 * d c; *第 5行 * ; *第 6行 * printf(“ d, d, d n“, a, b, C) *第 7行 * ( A)第 4行 ( B)第 5行 ( C)第 6行 ( D)第 7行 22 不能正确表示数学式的 表达式是 ( A) a*

8、b c ( B) a c*b ( C) a b*c ( D) a*(b c) 23 C语言程序中,运算对象必须是整型数的运算符是 ( A) ( B) ( C) & ( D) * 24 设有定义: int k 1, m 2; f 7;,则以下选项中错误的表达式是 ( A) k k k ( B) k ( C) k int(f) ( D) k f m 25 设有定义: int a 2, b 3, c 4;,则以下选项中值为 0的表达式是 ( A) (!a=1)&(!b=0) ( B) (a b)&!c 1 ( C) a&b ( D) a (b b) (c a) 26 若有表达式 (w)?( x):

9、( y),则其中与 w等价的表达式是 ( A) w=1 ( B) w=0 ( C) w! 1 ( D) w! 0 27 若有定义: double a 22; int i 0, k 18; 则不符合 C语言规定的赋值语句是 ( A) i (a k) (i k); ( B) a a, i; ( C) i a 11; ( D) i !a; 28 设变量已正确定义并赋值,以下正确的表达式是 ( A) x y z 5, y ( B) int(15 8 5) ( C) x=y*5 x z ( D) x 25 5 0 29 若有定义语句: int x 10;则表达式 x x x的值为 ( A) 20 ( B

10、) 0 ( C) 10 ( D) 10 30 有以下程序 #include main() int a 1, b 0; printf(“ d,“,b a B) printf(“ d n“, a 2*B) 程序运行后的输出结果是 ( A) 1, 0 ( B) 3, 2 ( C) 1, 2 ( D) 0, 0 国家二级 C语言机试( C语言程序设计)模拟试卷 10答案与解析 一、选择题 1 【正确答案】 A 【试题解析】 由题意可知,小写字符 a和大写字符 A的 ASCII代码相差为 32,所以选项 C能将大写字符 C的 ASCII代码转换为小写字符 c的 ASCII代码;选项D和 C左侧的表达式都

11、是大写字符 C与大写字符 A的差与 a的 ASCII代码的和就是小写字符 c的 ASCII代码。而选项 A中应该是加上 a,而不是减去 a。 【知识模块】 C语言程序设计 2 【正确答案】 C 【试题解析】 一个字符常量代表 ASCII字符集中的一个字符,在程序中用单引号把一个字符括起来作为字符常量。 【知识模块】 C语言程序设计 3 【正确答案】 B 【试题解析】 一个字符常量代表 ASCII字符集中的一个字符,在程序中用单引号把一个字符括起来。也可以为转移字符,转义字符又称反斜线字符,这些字符常量总是以一个反斜线开头后跟一个特定的字符,用来代表某一个特定 的 ASCII字符,这些字符常量也

12、必须括在一对单引号内。其中反斜线后的八进制数可以不用 0开头,但是不能有 8和 9字符出现。反斜线后的十六制数只可由小写字母 x开头。 【知识模块】 C语言程序设计 4 【正确答案】 C 【试题解析】 每个字符变量被分配一个字节的内存空间,因此只能存放一个字符。字符值是以 ASCII码的形式存放在变量的内存单元之中的。 【知识模块】 C语言程序设计 5 【正确答案】 A 【试题解析】 字符常量允许进行简单的算术运算,则 C 5表示 H,而 9 0则表示数值 9。 【知识模块】 C语言程序设计 6 【正确答案】 C 【试题解析】 在程序中用单引号把一个字符括起来作为字符常量。但是为了表示字符 “

13、 ”要用两个 “ ”表示一个反斜杠。 【知识模块】 C语言程序设计 7 【正确答案】 C 【试题解析】 在程序中用单引号把一个字符括起来作为字符常量。转义字符又称反斜线字符,这些字符常量总是以一个反斜线开头后跟一个特定的字符,用来代表某一个特定的 ASCII字符,这些字符常量也必须括在一对单引号内,和整型常量一样,字符常量也可以进行关系运算的。 【知识模块】 C语言程序设计 8 【正确答案】 C 【试题解析】 一个字符常量代表 ASCII字符集中的一个字符,在 C程序中,字符常量可参与任何整数运算,转义字符以一个反斜线开头后跟一个特定的字符。 【知识模块】 C语言程序设计 9 【正确答案】 B

14、 【试题解析】 转义字符以一个反斜线开头后跟一个特定的字符,可以利用 ddd3位八进制数代表的一个 ASCII字符,也可以 xhh2位十六进制数代表的一个 ASCII字符。选项 A中的八进制表示出现字符 8,非法。 【知识模块】 C语言程序设计 10 【正确答案】 C 【试题解析】 C语言允许对整型变量赋以字符值,也允许对字符变量赋以整型值。在输出时,允许把字符变量按整型量输出,也允许把整型量按字符量输出。 【知识模块】 C语言程序设计 11 【正确答案】 C 【试题解析】 C语言中 char类型数据占字节数为 1。 【知识模块】 C语言程序设计 12 【正确答案】 C 【试题解析】 表达式

15、a (a A&a Z)?(a 32): a,为条件表达式,如果 a是大写字符,则转换为小写字符存放到 a中,否则不变。 【知识模块】 C语言程序设计 13 【正确答案】 C 【试题解析】 字符串常量是由双引号括起来的一串字符。在 C语言中,以一个反斜线开头后跟一个特定的字符,用来代表一个特定的 ASCII字符。利用两个 表示一个反斜杠,因此选项 D的表示无法确认表示几个反斜杠。 【知识模块】 C语言程序设计 14 【正确答案】 C 【试题解析】 数学关系 x y 10表 示 x和 y的差的绝对值小于 10,选项 A使用了 abs求绝对值函数,满足要求;选项 B是 x和 y的差值在 10和 10

16、之间,满足要求;选项 C是 x和 y的差值大于 10或者 y和 x的差值小于 10,不满足要。 【知识模块】 C语言程序设计 15 【正确答案】 C 【试题解析】 本题主要考查 ASCII码和自加运算。第一个 printf语句中,是以字符形式输出 b的值,放在变量的后面是先使用然后自增,因此第一个printf输出值是 2,然后 b的值变成 3。在第二个 printf语句中, b的值为 3, a的值为 1,所以 b a的值为 2。 【知识模块】 C语言程序设计 16 【正确答案】 C 【试题解析】 n和 e的 x幂次方,要分别调用 C语言的数学库函数 double pow(n,x)和 doubl

17、e exp(x),因为这两个函数的返回值都为 double型,对其两者的和计算绝对值,调用库函数 double fabs(pow(n,x) exp(x),求出和的绝对值,再调用开平方函数 double sqrt(fabs(pow(n,x) exp(x),这样计算出的结果就是题干中算术表达式的值。 【知识模块 】 C语言程序设计 17 【正确答案】 C 【试题解析】 这个表达式的计算过程为,首先求出 9除以 2的商等于 4,再把其强制转化为实型数据为 4 0,然后再强制转 4,减去 9对 2求余数 1,得到其结果等于 3。 【知识模块】 C语言程序设计 18 【正确答案】 B 【试题解析】 由于

18、 x,y,z都是整型数据,所以 x除以 y的值为整型数值 1, 1和0 9相加得到 1 9,再转换为整型数 1赋给整型变量 z。 【知识模块】 C语言程序设计 19 【正确答案】 C 【试题解析】 表达式的计算过程 为: 3 6 5 2 1 2十 5 2 3 6 2 1 2 1 3 8。此题要注意 5 2的结果是 2,而不 2 5,因为除法运算符两边的数值类型均为整型,故运算结果的数值类型也被认定为整型。 【知识模块】 C语言程序设计 20 【正确答案】 A 【试题解析】 选项 B中运算符不存在,选项 C中 double类型不能进行取余( )操作,要求两个运算数必须是整数,选项 D中 x y

19、x错误。 【知识模块】 C语言程序设计 21 【正确答案】 A 【试题解析】 第 4行出错,在第 4行括号中两个逗号 不可以为空。单独的分号为C语言的空语句,是编译程序可以识别并且编译的,因此第 5、 6行都是正确的。 【知识模块】 C语言程序设计 22 【正确答案】 C 【试题解析】 表达式的含义为 a乘以 b除以 c,选项 C正好曲解了这一个含义。 【知识模块】 C语言程序设计 23 【正确答案】 B 【试题解析】 要求参与运算的运算量为整型,其他三个运算符对于参与运算的运算量没有直接要求。 【知识模块】 C语言程序设计 24 【正确答案】 C 【试题解析】 本题考查了赋值表达式, 在赋值

20、表达式中,等号的左边必须是变量,等号右边可以是变量、表达式或者常量。选项 A是一个赋值表达式;选项 B是一个表达式;选项 C是计算余数表达式;选项 D错误,等号的左边不是变量。 【知识模块】 C语言程序设计 25 【正确答案】 A 【试题解析】 本题主要考查逻辑运算。选项 A中, (!a=1)中 !运算优先级比 =高,因此 !a为假,然后在和 1比较是否相等,因此整个表达式的结果为假, (!a=1)和 (!b=0)是与的关系,前面的表达式为假,整个表达式结果就是假 (0);选项 B中a b为真, !c值为假 , (a b) !c值为假, (a b)&!c1为真:选项 C中 a&b的值为 2;选

21、项 D中 a的值为真,表达式的结果为真。 【知识模块】 C语言程序设计 26 【正确答案】 D 【试题解析】 本题考查条件表达式。 (w)?(-x): ( y)的含义是如果 w非 0那么表达式的值为 x,否为 y,因此只有选项 D和 w等价。 【知识模块】 C语言程序设计 27 【正确答案】 C 【试题解析】 在 C语言中,求余运算符的运算对象只能是整型,在题目中,变量 a是一个双精型实型变量。 【知识模块 】 C语言程序设计 28 【正确答案】 A 【试题解析】 在赋值表达式中,赋值符号 “ ”的左边只能为赋值的变量,不能为表达式,右边可以为常量或者是表达式,故选项 C错误;在取余运算中,运

22、算符“ ”两边都必须是整型数据,所以选项 B、 D错误,选项 A是 C语言中的逗号表达式。 【知识模块】 C语言程序设计 29 【正确答案】 C 【试题解析】 表达式 x x+x等价于 x x (x x),整型变量 x的初始值等于10,计算题目所求表达式的值时,首先计算 x与 x的和等于 20,然后再用 10减去20等于 10,得到该表达式的值。 【知识模块】 C语言程序设计 30 【正确答案】 C 【试题解析】 在主函数中定义了两个整型变量 a和 b,并把它们的初值分别设置为 1和 0;在第二条语句中,首先计算出 a和 b的和等于 1,把此值赋给变量 b,并在屏幕上输出此时变量 b的值 1;在第三条语句中,计算出 2乘以 1的积等于2,把 2赋给变量 a,再把变量 a的值在屏幕上输出。 【知识模块】 C语言程序设计

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1