知到全国计算机等级考试二级C语言(山东联盟)智慧树答案

wangke 知到智慧树答案 7

绪论 单元测试

1、单选题:十进制的10对应的二进制表示是以下哪个选项?

A: 1000

B: 1010

C: 0010

D: 10

正确答案:【 1010】

2、单选题:二进制数1000对应的十进制数是多少?

A: 1

B: 10

C: 1000

D: 8

正确答案:【 8】

3、单选题:计算机中数据存储的最小单位是什么?

A: 字节

B: 位

C: 地址

正确答案:【 位】

4、单选题:计算机中数据存储的基本单位是什么?

A: 位

B: 字节

C: 地址

正确答案:【 字节】

5、单选题:计算机的存储空间中一个字节是由多少个连续的位组成?

A: 4

B: 8

C: 10

D: 1

正确答案:【 8】

第一章 单元测试

1、单选题:C语言主要是借助以下哪种手段来实现程序模块化(  )

A:使用三种基本结构语句

B:定义函数

C:使用丰富的数据类型

D:定义常量和外部变量

正确答案:【定义函数】

2、单选题:以下叙述错误的是(  )

A:在一个任务中,单独编写的每个模块均可以独立运行

B:采用模块化结构,可以提高程序编制的效率

C:程序“模块化“有利于任务的分解

D:允许对函数单独进行编译,是C语言实现“模块化“的基础

正确答案:【在一个任务中,单独编写的每个模块均可以独立运行】

3、单选题:以下叙述中错误的是(   )

A:C程序在运行过程中所有计算都以二进制方式进行

B:计算机不能直接执行C语言程序

C:C程序在运行过程中所有计算都以十进制方式进行

D:所有C程序都需要编译链接无误后才能运行

正确答案:【C程序在运行过程中所有计算都以十进制方式进行】

4、单选题:流程图是描述算法的很好的工具,一般的流程图中由几种基本图形组成,其中条件判断的图形是(   )

A:菱形

B:椭圆型

C:平行四边形

D:长方形

正确答案:【菱形】

5、单选题:以下叙述中正确的是()。

A:计算机能直接运行未经编译的C语言程序

B:计算机能够直接处理不超过20行源码的简单C语言程序

C:复杂算法不能使用N-S流程图来描述

D:循环结构、选择结构、顺序结构是结构化程序的三种基本结构

正确答案:【循环结构、选择结构、顺序结构是结构化程序的三种基本结构】

第二章 单元测试

1、单选题:对于一个正常运行的C程序,以下叙述中正确的是(  )

A:程序的执行总是从程序的第一个函数开始, 在main函数结束

B:程序的执行总是从main函数开始

C:程序的执行总是从main函数开始,在程序的最后一个函数中结束

D:程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束

正确答案:【程序的执行总是从main函数开始】

2、单选题:以下叙述中正确的是(  )

A:C语言程序将从源程序中第一个函数开始执行

B:C语言规定必须用main作为主函数名,程序将从此开始执行

C:可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行

D:main的各种大小写拼写形式都可以作为主函数名,如:MAIN,Main等

正确答案:【C语言规定必须用main作为主函数名,程序将从此开始执行】

3、单选题:C语言源程序名的后缀是(  )

A:obj

B:.cp

C:exe

D:.C

正确答案:【.C】

4、单选题:以下关于注释的叙述中错误的是()。

A:注释的边界符号“/*”和“*/”必须成对出现且可以嵌套

B:C语言允许注释出现在程序中任意合适的地方

C:注释的边界符号“/”和“*”之间不允许加入空格

D:注释的内容仅用于阅读,对程序的运行不起作用

正确答案:【注释的边界符号“/*”和“*/”必须成对出现且可以嵌套 】

5、单选题:关于程序中的注释,以下叙述正确的是()。

A:/* 和 */多行注释中间不可以嵌套另一个注释

B: 注释的内容必须放在一对/* 和 */之间

C:注释内容错误会导致编译出错

D:注释必须置于所说明的语句前或语句后

正确答案:【/* 和 */多行注释中间不可以嵌套另一个注释】


第三章 单元测试

1、单选题:若有定义语句:char  c=’A’;   则变量c在内存中占(    )

A:4个字节

B:3个字节

C:1个字节

D:2个字节

正确答案:【1个字节】

2、单选题:以下选项中,合法的C语言实数是(   )

A:E13

B:3.1e0.4

C: .2e0


D:7.12E

正确答案:【 .2e0

3、单选题:以下选项中合法的标识符是(   )

A:1_ _

B:_11

C:1_1

D:1-1

正确答案:【_11】

4、单选题:以下选项中叙述正确的是(   )

A:C语言的标识符可分为关键字、预定义标识符和用户标识符三类

B:C语言的标识符可分为语句、变量和关键字三类

C:C语言的标识符可分为运算符、用户标识符和关键字三类

D:C语言的标识符可分为函数名、变量和预定义标识符三类

正确答案:【C语言的标识符可分为关键字、预定义标识符和用户标识符三类】

5、单选题:C语言程序中,运算对象必须是整型数的运算符是(   )

A:*

B:&&

C:%

D: /


正确答案:【%】

6、单选题:若有定义语句:int a=12;,则执行语句:a+= a-= a*a;后,a的值是(   )

A:264

B:-264

C:144

D:552

正确答案:【-264】

7、单选题:有以下程序

#include <stdio.h>

int main()

{

int  x=010,  y=10;

printf(“%d,%d”, ++x, y–);

return0;}程序运行后的输出结果是(   )

A:010,9

B:9,10

C:10,9

D:11,10

正确答案:【9,10】

8、单选题:有以下程序

#include <stdio.h>

main()

{

int  a;

a = (int)(-1.53*3);

printf(“%d”, a);

}

程序的运行结果是(  )

A:-3

B:结果不确定

C:-4

D:-5

正确答案:【-4 】

9、单选题:若有定义:int a=3;double b=0.1263;  char ch=’a’;,则以下选项中,叙述有错的是(   )。

A:复合运算:a*=b+ch是将变量b、ch之和与a相乘,结果再给a赋值

B:逗号表达式的计算结果是最后一个逗号之后的表达式的运算结果

C:语句ch=(unsigned int) a+b;是对a与b之和进行强制类型转换,结果赋值给变量ch

D:运算符%只能对整数类型的变量进行运算

正确答案:【语句ch=(unsigned int) a+b;是对a与b之和进行强制类型转换,结果赋值给变量ch】

10、单选题:以下选项中,合法的数值型常量是(   )

A:0xDH

B:“A”

C:092

D:3.1415

正确答案:【3.1415】

第四章 单元测试

1、单选题:若变量已正确定义并赋值,以下不能构成C语句的选项是(    )

A:A?a:b;

B:B++;

C:a=a+b

D:A=a+b;

正确答案:【a=a+b】

2、单选题:若想给已定义为int型的变量a,b,c,d赋值为1,以下选项中错误的语句是(   )。

A:a=1, b=a, c=b, d=c;

B:d=1, c=d, b=c, a=b;

C:a=b, b=c, c=d, d=1;

D:a=b=c=d=1;

正确答案:【a=b, b=c, c=d, d=1;】

3、单选题:有以下程序

#include <stdio.h>

main()

{ int a=0,b=0;

/* 给a赋值  a=10;

b=20; 给b赋值 */

printf(“a+b=%d”,a+b); /* 输出计算结果 */

}

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

A:a+b=10

B:出错

C:a+b=0

D:a+b=30

正确答案:【a+b=0】

4、单选题:有以下程序

#include <stdio.h>

main()

{

char  c1=’A’, c2=’Y’;

printf( “%d, %d”, c1,c2 );

}

程序的输出结果是(   )

A:输出格式不合法,输出出错信息

B:65,89

C:A,Y

D:65,90

正确答案:【65,89】

5、单选题:设有定义:int n = 1234;

double x = 3.1411;

则语句

printf(“%3d,%1.3f”, n, x);

的输出结果是(    )

A:1234,3.142

B:1234,3.141

C:123,3.142

D:123,3.141

正确答案:【1234,3.141】

6、单选题:有如下程序

#include <stdio.h>

main()

{

int x = 0x13;

printf(“%d”, x+1);

}

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

A:12

B:14

C:20

D:13

正确答案:【20】

7、单选题:若有定义

int a;

float b;

double c;

程序运行时输入:3  4  5<回车>

能把值3输入给变量a、4输入给变量b、5输入给变量c的语句是(   )

A:scanf(“%lf%lf%lf”, &a,&b,&c);

B:scanf(“%d%f%lf”, &a,&b,&c);

C:scanf(“%d%f%f”, &a,&b,&c);

D:scanf(“%d%lf%lf”, &a,&b,&c);

正确答案:【scanf(“%d%f%lf”, &a,&b,&c);】

8、单选题:以下叙述中正确的是(   )

A:在printf函数中,各个输出项只能是变量

B:在使用scanf函数输入整数或实数时,输入数据之间只能用空格来分隔

C:使用printf函数无法输出百分号%

D:在scanf函数中的格式控制字符串是为了输入数据用的,不会输出到屏幕上

正确答案:【在scanf函数中的格式控制字符串是为了输入数据用的,不会输出到屏幕上】

9、单选题:若有定义:char c;int d; ,程序运行时输入: 1,2 <回车>,能把值1输入给变量c、值2输入给变量d的输入语句是(   )

A:scanf(“%d,%f”, &c,&d);

B:scanf(“%c,%d”, &c,&d);

C:scanf(“%d%d”, &c,&d);

D:scanf(“%c%d”, &c,&d);

正确答案:【scanf(“%c,%d”, &c,&d);】

10、单选题:以下能正确输出字符a 的语句是()

A:printf(“%d”, ‘a’);

B:printf(“%c”, “a”);

C:printf(“%s”, “a”);

D:printf(“%s”, ‘a’);

正确答案:【printf(“%s”, “a”);】

第五章 单元测试

1、单选题:表示关系式x≤y≤z的C语言表达式的是(    )

A:(x<=y)||(y<=z)

B:(x<=y<=z)

C:(x<=y)&&(y<=z)

D:(x<=y)!(y<=z)

正确答案:【(x<=y)&&(y<=z)】

2、单选题:已知a=5,b=6,c=7,d=8,m=2,n=2,执行(m=a>b)&&(n=c<d)后n的值为(   )

A:-1

B:0

C:1

D:2

正确答案:【2】

3、单选题:以下叙述中正确的是(    )

A:逻辑“非“(即运算符!)的运算级别是最低的

B:由&&构成的逻辑表达式与由||构成的逻辑表达式都有“短路“现象

C:C语言的关系表达式:0<x<10完全等价于: (0<x) && (x<10)

D:逻辑“或“(即运算符||)的运算级别比算术运算要高

正确答案:【由&&构成的逻辑表达式与由||构成的逻辑表达式都有“短路“现象】

4、单选题:有以下程序

#include <stdio.h>

main()

{

int  a=0,b=0,c=0,d=0;

(++a || ++b) ? ++c : ++d;

printf(“%d,%d,%d,%d”, a,b,c,d);

}

程序的运行结果是(   )

A:1,0,1,0

B:1,1,1,0

C:1,0,0,1

D:1,1,0,1

正确答案:【1,0,1,0】

5、单选题:以下程序段中,不能实现条件“如果a<b则x=10,否则x=-10″的是()

A:if(a<b) x=10;

if(b<a) x=-10;

B:x=(a>=b)? -10:10;

C:x=-10;

if(a<b) x=10;

D:if(a<b) x=10;

else x=-10;

正确答案:【if(a<b) x=10;

if(b<a) x=-10;】

6、单选题:有以下程序段

scanf(“%d%d%d”,&a,&b,&c);

if(a>b) a=b;

if(a>c) a=c;

printf(“%d”,a);

该程序段的功能是()

A:输出a、b、c中值相等的数值

B:输出a、b、c中的最大值

C:输出a、b、c中的最小值

D:输出a的原始值

正确答案:【输出a、b、c中的最小值】

7、单选题:有如下程序

#include <stdio.h>

main()

{

int a = 0, b = 1;

if (++a == b++)

printf(“T”);

else

printf(“F”);

printf(“a=%d,b=%d”, a, b);

printf(“”);

}

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

A:Fa=0,b=2

B:Ta=1,b=2

C:Ta=0,b=1

D:Fa=1,b=2

正确答案:【Ta=1,b=2】

8、单选题:下列条件语句中,输出结果与其他语句不同的是( )

A: if ( a )  printf(“%d”, x);      else  printf(“%d”, y);

B:if ( a==0 )  printf(“%d”, y);   else  printf(“%d”, x);

C: if ( a!=0 )  printf(“%d”, x);    else  printf(“%d”, y);

D:if ( a==0 )  printf(“%d”, x);   else  printf(“%d”, y);

正确答案:【if ( a==0 )  printf(“%d”, x);   else  printf(“%d”, y);】

9、单选题:有以下程序

#include <stdio.h>

main()

{  int  x=1, y=0,a=0,b=0;

switch( x )

{  case  1: switch ( y )

{  case  0:  a++; break;

case  1:  b++; break;

}

case  2:  a++; b++;  break;

}

printf(“a=%d,b=%d”,a,b );

}

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

A:a=2,b=2

B:a=2,b=1

C:a=1,b=1

D:a=1,b=0

正确答案:【a=2,b=1】

10、单选题:若以下选项中的变量a, b, y均已正确定义并赋值,则语法正确的switch语句是()

A:switch (a+9)

{  case  a : y=a-b;

case  b : y=a+b;}

B:switch( a+b )

{  case1 :

case3 : y=a+b; break;

case0 :

case4 : y=a-b;}

C:switch( a*a+b*b )

{  default : break;

case  3 :  y=a+b;  break;

case  2 :  y=a-b;  break;

}

D:switch  a*b

{  case  10 : y=a+b;

default  : y=a-b;

}

正确答案:【switch( a*a+b*b )

{  default : break;

case  3 :  y=a+b;  break;

case  2 :  y=a-b;  break;

}】

第六章 单元测试

1、单选题:有以下程序

#include <stdio.h>

main()

{ int  i, sum;

for( i=1; i<6;  i++ )

sum+=i;

printf(“%d”, sum);

}

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

A:随机值

B:15

C:16

D:0

正确答案:【随机值】

2、单选题:有以下程序

#include  <stdio.h>

main( )

{    int a=-2, b=2;

for(; ++a && –b;)

printf(“%d,%d,”, a,b);

}

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

A:-1,1,

B:0,1,

C:-1,1,0,0,

D:-1,1,0,1,

正确答案:【-1,1,】

3、单选题:要求通过while循环不断读入字符,当读入字母N时结束循环。若变量已正确定义,以下正确的程序段是(  )

A:while(ch=getchar() =’N’) printf(“%c “,ch);

B:while(ch=getchar()==’N’) printf(“%c “,ch);

C:while((ch=getchar())!=’N’) printf(“%c “,ch);

D:while((ch=getchar())==’N’) printf(“%c “,ch);

正确答案:【while((ch=getchar())!=’N’) printf(“%c “,ch);】

4、单选题:有以下程序

#include <stdio.h>

main()

{

int  a = -2, b = 0;

while (a++ && ++b) ;

printf(“%d,%d”,  a, b );

}

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

A:0,2

B:1,2

C:0,3

D:1,3

正确答案:【1,2】

5、单选题:以下叙述正确的是(  )

A:while-do语句构成的循环,当while语句中的表达式值为非0时结束循环

B:do-while语句和while-do构成的循环功能相同

C:do-while语句构成的循环,当while语句中的表达式值为0时结束循环

D:do-while语句构成的循环,必须用break语句退出循环

正确答案:【do-while语句构成的循环,当while语句中的表达式值为0时结束循环】

6、单选题:有以下程序

#include <stdio.h>

main()

{  char c;

do {

c=getchar();

putchar(c);

}while(c != ‘#’);

printf(“”);

}

执行时如输入:abcdefg##<回车> , 则输出结果是(  )

A:abcdefg#

B:abcdefg

C:abcdefg##

D:##

正确答案:【abcdefg#】

7、单选题:以下叙述中正确的是(  )

A:continue语句的作用是:使程序的执行流程跳出包含它的所有循环

B:break语句只能用在循环体内和switch语句体内

C:break语句只能用于switch语句体中

D:在循环体内使用break语句和continue语句的作用相同

正确答案:【break语句只能用在循环体内和switch语句体内】

8、单选题:有以下程序

#include <stdio.h>

main()

{

int  a=1, b=0;

for(;a<5; a++)

{  if (a%2==0)  break;

b += a;

}

printf(“%d “, b);

}

程序的运行结果是(  )

A:1

B:0

C:4

D:10

正确答案:【1】

9、单选题:有如下程序

#include <stdio.h>

main( )

{

int  i, data;

scanf(“%d”, &data);

for (i=0; i<5; i++)

{

if (i < data) continue;

printf(“%d-“, i);

}

}

程序运行时,从键盘输入:3<回车>后,程序输出结果为(  )

A:1-2-3-

B:3-4-

C:0-1-2-3-

D:0-1-2-

正确答案:【3-4-】

10、单选题:若有以下程序

#include <stdio.h>

main()

{  int  s=0, n;

for (n=0; n<4; n++)

{  switch(n)

{  default: s+=4;

case 1: s+=1;  break;

case 2: s+=2;  break;

case 3: s+=3;

}

}

printf(“%d”, s);

}

则程序的输出结果是(  )

A:10

B:11

C:13

D:15

正确答案:【11】

第七章 单元测试

1、单选题:有以下程序

#include <stdio.h>

main()

{ int  i, t[][3]={9,8,7,6,5,4,3,2,1};

for(i=0;i<3;i++)

printf(“%d “,t[2-i][i]);

}

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

A:7 5 3

B:7 5 1

C:3 6 9

D:3 5 7

正确答案:【3 5 7】

2、单选题:以下错误的定义语句是( )。

A:int x[][3]={1,2,3,4};

B:int x[4][]= {{1,2,3},{1,2,3},{1,2,3

剩余章节答案付费后可长期查看

如无法购买,请复制网址,换浏览器打开

做题有答案,效率提高!

使用过程中有疑问联系QQ55089918

电大答案

发布评论 0条评论)

还木有评论哦,快来抢沙发吧~

当前文章名称

手机号用于查询订单,请认真核对

支付宝
立即支付

请输入手机号或商家订单号

商家订单号在哪里?点此了解

你输入的数据有误,请确认!

如已购买,但查不到

可联系客服QQ 55089918 进行核实