试题 百分网手机站

计算机二级考试试题C语言冲刺题及答案

时间:2020-10-30 09:15:50 试题 我要投稿

2016年计算机二级考试试题C语言冲刺题及答案

  2016年3月(45次)全国计算机等级(以下简称NCRE)考试将于3月26-29日举行。为了帮助大家能顺利通过2016年计算机二级考试,下面百分网小编为大家带来2016年计算机二级考试试题C语言冲刺题及答案,供大家参考学习,预祝考生考试成功!

  一、选择题

  1[单选题] 设有定义:char*C;以下选项中能够使C正确指向一个字符串的是( )。

  A.char str( )=”string”;C=str;

  B.scanf(”%s”,

  C.;C.c=getchar( );

  D.*c=”strin9”;

  参考答案:A

  参考解析:A选项为正确用法,先将字符串存于字符数组中,然后将数组名赋给字符指针(数组名代表数组首地址,定义数组时为其分配确定地址)。C选项错误,getchar()函数只能输入一个字符给字符型变量,而不是字符指针。B选项和D选项有类似的错误,两个选项并无语法错误,但运行时可能会出现问题。因为在B选项和D选项中,字符指针没有被赋值,是个不确定的值,指向一个不确定的内存区域,这个区域可能存放有用的指令或数据。在这个不确定的区域重新存放字符串,可能会发生无法预知的错误。因此A选项正确。

  2[单选题] 若有以下程序

2016年计算机二级考试试题C语言冲刺题及答案

  则程序的输出结果是

  A.5,6,0B.6,0,0C.6。6,1D.5,6,1

  参考答案:C

  参考解析:本题重点考查C语言中for语句和逻辑表达式,for语句的一般形式为:

  for(表达式1;表达式2;表达式3)语句其循环中的“表达式1(循环变量赋初值)”、“表达式2(循环条件)”和“表达式3(循环变量增量)”都是选择项,即可以缺省,但“;”不能缺省。该题目中省了“表达式1(循环变量赋初值)”和“表达式3(循环变量增量)”。for(;a&&(b==0);){b+=a s a-=e++;}相当于while(a&&(b==0)){b+=a;a-=c++;}。因此c选项正确。

  3[单选题] 以下叙述中正确的是

  A.对于逻辑表达式:a++|| b++,设a的值为1,则求解表达式的值后,b的值会发生改变

  B.对于逻辑表达式:a++&&b++,设a的值为0,则求解表达式的值后。b的值会发生改变

  C.else不是一条独立的语句,它只是if语句的一部分

  D.关系运算符的结果有三种:0,1,-1

  参考答案:C

  参考解析:B选项和A选项中,&&、||都是先计算左边表达式的值,当左边表达式的值能确定整个表达式的值。而且&&、||的优先级比++高,所以题中只需判断a的值即可知道符合表达式的真假;D选项中,关系运算符的结果有“真”和“假”两种。因此c选项正确。

  4[单选题] 以下选项中合法的c语言常量是( )。

  A.,C—STR’B.2014.1C.”\l.0D.2EK

  参考答案:B

  参考解析:所谓常量是指在程序运行的过程中,其值不能被改变的量。在C语言中,有整型常量、实型常量、字符常量和字符串常量等类型。选项A是字符串,但使用单引号,错误,选项c,D,为实型常量中指数形式,但指数形式e(E)之前必须是数字,之后必须为整数,错误。故答案为B选项。

  5[单选题] 有以下程序-

2016年计算机二级考试试题C语言冲刺题及答案

  程序运行后的输出结果是( )。

  A.4B.2C.8D.1

  参考答案:C

  参考解析:在c语言中,需要在main函数后面定义函数,需要提前声明,否则调用报错,无法找到该函数。HI=f(f(f(n))),一共调用3次f()函数,f()函数是对n:it2,因此,结果是n}2}2$2,得到结果为8。故答案为c选项。

  6[单选题] 若有定义:float x=1.5;int a=1,b=3,c=2;则正确的switch语句是( )。

2016年计算机二级考试试题C语言冲刺题及答案

  参考答案:A

  参考解析:B选项中switch((int)x);语句中不应该有最后的分号。switch(exprl),中的exprl不能用浮点类型或10n9类型,也不能为一个字符串,所以c错误。ca”后面常量表达式的类型必须与switch后面表达式的类型一致,所以D错误。

  7[单选题] 有以下程序

2016年计算机二级考试试题C语言冲刺题及答案

  程序运行后的输出结果是

  A.41;20;80;B.41;22;64;C.40;21;80;D.43;20;81;

  参考答案:A

  参考解析:声明结构类型S中有两个整形变量x,y,在main函数中,为s结构类型定义一个数组变量data初始化3个结构体元素,分别两两赋值给结构体中的x,y。在for循环中,对3个结构体元素y值转换成二进制数后向右移一位,再对此时x,y值依次进行输出,答案为A选项。

  8[单选题] 设有定义:char*C;以下选项中能够使C正确指向一个字符串的是( )。

  A.char str( )=”string”;C=str;

  B.scanf(”%s”,

  C.;C.c=getchar( );

  D.*c=”strin9”;

  参考答案:A

  参考解析:A选项为正确用法,先将字符串存于字符数组中,然后将数组名赋给字符指针(数组名代表数组首地址,定义数组时为其分配确定地址)。C选项错误,getchar()函数只能输入一个字符给字符型变量,而不是字符指针。B选项和D选项有类似的错误,两个选项并无语法错误,但运行时可能会出现问题。因为在B选项和D选项中,字符指针没有被赋值,是个不确定的值,指向一个不确定的内存区域,这个区域可能存放有用的指令或数据。在这个不确定的区域重新存放字符串,可能会发生无法预知的错误。因此A选项正确。

  9[单选题] 若有以下程序

2016年计算机二级考试试题C语言冲刺题及答案

  则程序的输出结果是

  A.5,6,0B.6,0,0C.6。6,1D.5,6,1

  参考答案:C

  参考解析:本题重点考查C语言中for语句和逻辑表达式,for语句的一般形式为:

  for(表达式1;表达式2;表达式3)语句其循环中的“表达式1(循环变量赋初值)”、“表达式2(循环条件)”和“表达式3(循环变量增量)”都是选择项,即可以缺省,但“;”不能缺省。该题目中省了“表达式1(循环变量赋初值)”和“表达式3(循环变量增量)”。for(;a&&(b==0);){b+=a s a-=e++;}相当于while(a&&(b==0)){b+=a;a-=c++;}。因此c选项正确。

  10[单选题] 以下叙述中正确的是

  A.对于逻辑表达式:a++|| b++,设a的值为1,则求解表达式的值后,b的值会发生改变

  B.对于逻辑表达式:a++&&b++,设a的值为0,则求解表达式的值后。b的值会发生改变

  C.else不是一条独立的语句,它只是if语句的一部分

  D.关系运算符的结果有三种:0,1,-1

  参考答案:C

  参考解析:B选项和A选项中,&&、||都是先计算左边表达式的值,当左边表达式的值能确定整个表达式的值。而且&&、||的优先级比++高,所以题中只需判断a的值即可知道符合表达式的真假;D选项中,关系运算符的结果有“真”和“假”两种。因此c选项正确。

  11[单选题] 以下选项中合法的c语言常量是( )。

  A.,C—STR’B.2014.1C.”\l.0D.2EK

  参考答案:B

  参考解析:所谓常量是指在程序运行的过程中,其值不能被改变的量。在C语言中,有整型常量、实型常量、字符常量和字符串常量等类型。选项A是字符串,但使用单引号,错误,选项c,D,为实型常量中指数形式,但指数形式e(E)之前必须是数字,之后必须为整数,错误。故答案为B选项。

  12[单选题] 有以下程序-

2016年计算机二级考试试题C语言冲刺题及答案

  程序运行后的输出结果是( )。

  A.4B.2C.8D.1

  参考答案:C

  参考解析:在c语言中,需要在main函数后面定义函数,需要提前声明,否则调用报错,无法找到该函数。HI=f(f(f(n))),一共调用3次f()函数,f()函数是对n:it2,因此,结果是n}2}2$2,得到结果为8。故答案为c选项。