知到智慧树 二级C语言编程技巧与实例解析(山东联盟) 答案满分完整版章节测试

城戌韭谎播衬靠卷歇焕虚饺腻




绪论 单元测试

 

1、
二级C语言的题型有单项选择题、程序填空题、程序改错题、程序设计题?

A:错
B:对
答案: 对

第一章 单元测试

1、
构成c程序的基本单位是函数,有且只有一个主函数

A:错
B:对
答案: 对

2、
c语言一行可以写多条语句

A:对
B:错
答案: 对

3、
c语言一条语句只能写在一行上

A:错
B:对
答案: 错

4、
一个c语言程序里可以有多个主函数

A:错
B:对
答案: 错

5、
一个C程序是由一个或多个函数组成的

A:对
B:错
答案: 对

6、
C语言中每个函数都能实现一个或多个功能

A:对
B:错
答案: 对

7、
在c语言中,调用的可以是库函数,也可以是用户自定义的函数

A:对
B:错
答案: 对

8、
‘n’是换行符

A:对
B:错
答案: 对

9、
c程序是用小写的英文字母编写的

A:对
B:错
答案: 对

10、
c语言主函数的名字是mian

A:对
B:错
答案: 错

第二章 单元测试

1、
以下选项中可用作C程序合法实数的是

A:E9
B:3.0e0.2
C:0.1e0
D:9.12E
答案: 0.1e0

2、
以下程序的输出结果是#include <stdio.h>void main(){   int x=10,y=10;    printf(“%d %d”,x–,–y);     }

A:10 9
B:9 9
C:10 10
D:9 10 
答案: 10 9

3、
若有定义语句:int a=3,b=2,c=1;以下选项中错误的赋值表达式是

A:a=(b=4)=3;
B:a=1+(b=c=4);
C:a=b=c+1;
D:a=(b=4)+c;
答案: a=(b=4)=3;

4、

写出下面程序的运行结果:

#include <stdio.h>

void main( )

{

    int x,y,z;

    x=y=1;

    z=x++,y++,++y;

    printf(“%d,%d,%d “,x,y,z);

}     

A:1,1,1
B:2,3,1
C:2,2,1
D:2,2,3
答案: 2,3,1

5、
写出下面程序的运行结果:#include <stdio.h>void main( ){int a=1,b=0;printf(“%d,”,b=a+b);printf(“%d”,a=2*b);}

A:1,1
B:3,2
C:1,2
D:2,2
答案: 1,2

6、
写出下面程序的运行结果是#include <stdio.h>void main(){  int a,b,c=9;   a=3,b=4;   c%= a+b;   printf(“%d”,c)}         

A:4
B:1
C:2
D:3
答案: 2

7、
写出下面程序的运行结果:#include <stdio.h>     void main(){ int a=4,b,c;  c=a+(b=2);  a+=a-=a*a;  printf(“%d,%d,%d “,a,b,c);}

A:-8,2,6
B:4,2,6
C:-24,2,6
D:-12,2,6
答案: -24,2,6

8、
c语言中整型常量有二进制整数、八进制整数、十进制整数

A:错
B:对
答案: 错

9、
%求余运算符要求两侧的运算对象必须是整数

A:错
B:对
答案: 对

10、
‘=’和’*=’的优先级是一样的

A:错
B:对
答案: 对

第三章 单元测试

1、
有以下程序#include <stdio.h>void main(){char a,b,c,d;scanf(“%c%c“,&a,&b);c=getchar( );d=getchar( );printf(“%c%c%c%c”,a,b,c,d);}当执行程序时,按下列方式输入数据12↙34↙则输出结果是

A:12 回车34
B:1234 
C:12
D:12 回车 3
答案: 12 回车 3

2、
若有定义:int a,b;通过语句scanf(“%d;%d”,&a,&b);能把整数3赋给变量a,5赋给变量b的输入数据是

A:3,5 
B:3 空格5
C:3分号5 
D:35
答案: 3分号5 

3、
以下不能输出字符A的语句是(注:字符A的ASCIl码值为65,字符a的ASCIl码值为97)

A:printf(“%c”,’a’-32);
B:printf(“%d”,’A’);
C:printf(“%c”,65);
D:printf(“%c”,’B’-1);
答案: printf(“%d”,’A’);

4、
已知大写字母A的ASCII码是65,小写字母a的ASCII码是97,以下不能将变量c中的大写字母转换为小写字母的语句是

A:c=c+32; 
B:c=(‘A’+c)%26-‘a’;
C:c=c-‘A’+’a’;
D:c=(c-‘A’)%26+’a’;
答案: c=(‘A’+c)%26-‘a’;

5、
在C语言中,每个语句和数据定义是用______ 结束  

A:分号
B:句号
C:逗号
D:括号
答案: 分号

6、
在C程序中printf函数和scanf函数是输出和输入函数

A:错
B:对
答案: 对

7、
在C程序中printf函数和scanf函数是格式输出输入函数,用这两个函数时,必须指定格式

A:对
B:错
答案: 对

8、
“c”是字符常量

A:对
B:错
答案: 错

9、
下列程序段是对还是错int a,b,c;scanf(”%f%f%f”,a,b,c);

A:对
B:错
答案: 错

10、
getchar函数一次只能接收一个字符

A:对
B:错
答案: 对

第四章 单元测试

1、
以下程序段的输出结果是                 #include <stdio.h>void main(){     int   i=1,j=1,k=2;       if((j++||k++)&&i++) printf(“%d,%d,%d”,i,j,k);}

A:2,2,3
B:2,2,2       
C: 2,2,1
D:1,1,2
答案: 2,2,2       

2、
当c的值不为0时,能正确将c的值赋给变量a,b的是

A:(a=c)&&(b=c)
B:(a=c)||(b=c)
C:c=b=a
D:a=c=b
答案: (a=c)&&(b=c)

3、
以下程序的运行结果是      #include <stdio.h>void main(){  int  a=010, b=10;   printf(“%d,%d” , ++a, b--); }

A: 011, 10 
B:9, 10   
C:11, 10
D: 011, 9
答案: 9, 10   

4、
已知int n,i=1,j=2;执行语句n=i<j?i++:j++;则i和j的值是

A:1,2
B:1,3
C:2,3
D:2,2
答案: 2,2

5、
#include <stdio.h> void main() { int x=1,y=0; if(!x) y++; else if(x==0)     if (x) y+=2;     else y+=3;  printf(“%d”,y);  }  程序运行后的输出结果是

A:1
B:0
C:3
D:2
答案: 0

6、
#include <stdio.h>main(){int x=1,y=0,a=0,b=0;  switch(x)  {case 1:   switch(y)                 {case 0:a++;break;                  case1:b++;break;}  case 2:a++;b++;break;  case 3:a++;b++;break;  default:a++;b++;}printf(“a=%d,b=%d”,a,b);}A.a=1,b=0 B.a=2,b=1  C.a=1,b=1  D.a=2,b=2以上程序的输出是 

A:a=2,b=1
B:a=1,b=0
C:a=2,b=2
D:a=1,b=1
答案: a=2,b=1

7、
下面程序的输出结果是:         #include<stdio.h>void main(){ int a=2, b=-1, c=2;  if(a<b)     if(b<0)  c=0;      else  c+=1;   printf(“%d”, c);   }

A:2
B:1
C:4
D:3
答案: 2

8、

下程序功能是:将值为三位正整数的变量x中的数值按照个位、十位、百位的顺序拆分并输出,请填空。

#include<stdio.h>

void main()

{int x=256;

 printf(“%d-%d-%d”,_______,x/10%10,x/100);}

A:x/10
B:x/10%10
C:x/100%10
D:x%10
答案: x%10

9、
有以下程序#include <stdio.h>void main(){ int x;  scanf(“%d”,&x);  if(x>15) printf(“%d”,x-5);  if(x>10) printf(“%d”,x);  if(x>5) printf(“%d “,x+5);}若程序运行时从键盘输入12<回车>,则输出结果为_________

A:12 17
B:7
C:17
D:12

答案: 12 17

10、

有以下程序(说明:字符0的ASCII码值为48)

#include <stdio.h>

main()

{ char c1,c2;

  scanf(“%d”,&c1);

  c2=c1+9;

  printf(“%c%c “,c1,c2);

}

若程序运行时从键盘输入48<回车>,则输出结果为_________

A:09
B:0
C:9
D:’0′ ‘9’
答案: 09

第五章 单元测试

1、
下述for循环语句________
int i,k;
for (i=0,k=-1;k=1;i++,k++)  printf(“***”);

A:一次也不循环
B:是无限循环
C:判断循环语句结束的条件非法
D:只循环一次
答案: 是无限循环

2、
#include <stdio.h>main( )
{ int x=0,y=5,z=3;
while(z–>0&&++x<5) y=y-1;
printf(“%d,%d,%d”,x,y,z);
} 程序执行后的输出结果是

A:3,2,-1
B:5,-2,-5
C:4,3,-1
D:3,2,0
答案: 3,2,-1

3、
有以下程序#include <stdio.h> main( )
{ int i,s=0;
 for(i=1;i<10;i+=2) s+=i+1;
 printf(“%d”,s);
} 程序执行后的输出结果是

A:自然数1~10的累加和
B:自然数1~10中的偶数之和
C:自然数1~9的累加和
D:自然数1~9中的奇数之和
答案: 自然数1~10中的偶数之和

4、
以下程序执行后的输出结果是#include <stdio.h>main( )
{ int i,n=0;
for(i=2;i<5;i++)
{ do
    { if(i%3) continue;
       n++;}
  while(!i);
  n++;}
printf(“n=%d”,n);} 

A:n=3
B:n=5
C:n=4
D:n=2
答案: n=4

5、
程序运行后的输出结果是#include<stdio.h>main(){ int i,j,m=2;   for(i=1;i<3;i++)  {for(j=3;j>0;j–)            {if(i+j>3) break;            m*=i*j;} }   printf(“m=%d”,m);}

A:m=2
B:m=4
C:m=5
D:m=6
答案: m=2

6、
以下程序运行后的输出结果是#include<stdio.h>main(){ int a=1,b=2;  for(;a<8;a++) { b+=a;a+=2;}  printf(“%d,%d”,a,b);}

A:10,14
B:9,18
C:7,11
D:8,11
答案: 10,14

7、
以下程序运行后的输出结果是
#include <stdio.h>main()
{   int c=0,k;
 for(k=1;k<3;k++)
    switch(k)
    { default:c+=k;
      case 2:c++;break;
      case 4:c+=2;break; }
 printf(“%d”,c);}

A:3
B:7
C:9
D:5
答案: 3

8、
以下程序的运行结果是
 #include <stdio.h>
 main()
 { int x=8;
   for( ; x>0; x–)
       { if(x%3)   { printf(“%d,”,x–);                        continue; }
         printf(“%d,”,–x); } }

A:9,7,6,4
B:8,5,4,2
C:7,4,2
D:8,7,5,2
答案: 8,5,4,2

9、
下述程序的输出结果#include<stdio.h>main(){  int y=10;   while(y–);   printf(“y=%d”,y);} 

A:y=0
B:y=-1
C:y=随机值
D:y=1
答案: y=-1

10、
下面的程序 的结果是:#include <stdio.h>main(){ int x=3;do   {printf(“%d”,x-=2);}while(!(–x));}

A:输出的是1和-2
B:是死循环
C:输出的是1 
D:输出的是3和0  
答案: 输出的是1和-2

11、
下述for语句int i,x;for (i=0,x=1;i<=9&&x!=876;i++) scanf(%d”,&x);

A:最多循环9次
B:一次也不循环
C:最多循环10次
D:无限循环
答案: 最多循环10次

12、
有以下程序#include <stdio.h>main(){int s;scanf(“%d”,&s);while(s>0){ switch(s){ case 1:printf(“%d”,s+5); case 2:printf(“%d”,s+4); break; case 3:printf(“%d”,s+3); default:printf(“%d”,s+1);break;}scanf(“%d”,&s);}}  运行时,若输入1 2 3 4 5 0<回车>,则输出结果是

A:66666 
B:666656 
C:6566456

D:66656
答案: 6566456


上方为免费预览版答案,如需购买完整答案,请点击下方红字

点击这里,购买完整版答案


为了方便下次阅读,建议在浏览器添加书签收藏本网页

添加书签方法:

1.电脑按键盘的Ctrl键+D键即可收藏本网页

2.手机浏览器可以添加书签收藏本网页

知到智慧树 二级C语言编程技巧与实例解析(山东联盟)  答案满分完整版章节测试第1张

知到智慧树 二级C语言编程技巧与实例解析(山东联盟)  答案满分完整版章节测试第2张


我们的公众号

打开手机微信,扫一扫下方二维码,关注微信公众号:萌面人APP

本公众号可查看各种网课答案,还可免费查看大学教材答案

点击这里,可查看公众号功能介绍

知到智慧树 二级C语言编程技巧与实例解析(山东联盟)  答案满分完整版章节测试第3张


 

萌苗列千齿赤雾康漠掀澎热蠢