知到appC-C++程序设计单元测试答案
第一章 单元测试
1、第一个高级语言Fortran出现在( )年
A:1946
B:1954
C:1956
D:1950
正确答案:【1954】
2、下列关于计算机语言的叙述中,正确的是( )
A:机器语言是与所有机器无关的语言
B:C语言属于高级语言
C:高级语言的源程序可以被计算机直接执行
D:在计算机语言中,只有机器语言属于低级语言
正确答案:【C语言属于高级语言】
3、源程序test.c经编译产生的目标文件和连接后产生的可执行文件是( )
A:test.obj和test.exe
B:test.exe 和test.c
C:test.bak和test.obj
D:test.bak和test.exe
正确答案:【test.obj和test.exe】
4、在算法的流程图表示中,菱形表示( )
A:算法的输入/输出操作
B:算法条件的转移操作
C:算法的开始与结束
D:算法的各种处理功能
正确答案:【算法条件的转移操作】
5、关于结构化程序设计阐述正确的是( )
A:结构化程序设计中使用顺序结构,可以不按各个模块出现的先后顺序进行程序执行
B:结构化程序设计方法不一定能提高软件开发效率
C:结构化程序设计中使用循环结构,可以无限循环
D:采用结构化程序设计方法,可以把一个模块的功能逐步分解细化
正确答案:【采用结构化程序设计方法,可以把一个模块的功能逐步分解细化】
第二章 单元测试
1、以下定义语句中正确的是( )
A:float a=b=10.0;
B:float a,b=&a;
C:char a='A' b='B';
D:int a=10, b=&a;
正确答案:【int a=10, *b=&a;】
2、下列选项中,不能用作标识符的是( )
A:1234
B:1_2
C:int_2
D:2_int_
正确答案:【2_int_】
3、有以下定义语句double a,b; int w; long c;若各变量已正确赋值,则下列选项中正确的表达式是( )
A:(c+w)%(int)a
B:a=a+b=b++
C:
w%((int)a+b)
D:
w=a==b;
正确答案:【(c+w)%(int)a】
4、有以下程序:
main()
{int m=3,n=4,x;
x=-m++;
x=x+8/++n;
printf{"%d",x);
}
程序运行后的输出结果是( )
A:-2
B:3
C:5
D:-1
正确答案:【-2】
5、表达式3.6-5/2+1.2+5%2的值是( )
A:3.8
B:4.3
C:3.3
D:4.8
正确答案:【3.8】
第三章 单元测试
1、下列语句中符合C语言语法的赋值语句是( )
A:a=7+b,c=a+7;
B:a=7+b+c=a+7;
C:a=7+b,b++,a+7
D:a=7+b++=a+7;
正确答案:【a=7+b,c=a+7;】
2、下面程序的输出是( )
main()
{ int x=10,y=3;
printf("%d",y=x/y);}
A:不确定的值
B:1
C:0
D:3
正确答案:【3】
3、下面程序的输出是( )
main()
{ int x=023;21
printf(%d",–x);
}
A:18
B:23
C:17
D:24
正确答案:【18】
4、设有如下程序段:
int x=2002, y=2003;
printf("%d",(x,y));
则以下叙述中正确的是( )
A:输出值为2002
B:运行时产生出错信息
C:输出值为2003
D:输出语句中格式说明符的个数少于输出项的个数,不能正确输出
正确答案:【输出值为2003】
5、有定义语句:int x, y;,若要通过scanf("%d,%d",&x,&y);语句使变量x得到数值11,变量y得到数值12,下面四组输入形式中,错误的是( )
A:11,12,<回车>
B:11,<空格>12<回车>
C:11,<回车>12<回车>
D:11 12<回车>
正确答案:【11 12<回车>】
第四章 单元测试
1、关于C语言逻辑值的说法错误的是( )
A:C语言中有逻辑数据类型
B:C语言中没有逻辑数据类型
C:逻辑值以整型类型保存
D:逻辑值只有两个值,表示为1和0
正确答案:【C语言中有逻辑数据类型】
2、下列运算符中优先级最低的是( )
A:||
B:!=
C:<=
D:+
正确答案:【||】
3、算术运算符、赋值运算符和关系运算符的运算优先级按从高到低依次为( )
A:算术运算、赋值运算、关系运算
B:算术运算、关系运算、赋值运算
C:关系运算、算术运算、赋值运算
D:关系运算、赋值运算、算术运算
正确答案:【算术运算、关系运算、赋值运算】
4、以下关于if语句的错误描述是( )
A:条件表达式可以是任意的表达式
B:条件表达式只能是关系表达式或逻辑表达式
C:条件表达式的括号不能省
D:与else配对的if语句是其之前最近的未配对的if语句
正确答案:【条件表达式只能是关系表达式或逻辑表达式】
5、main()
{ int x=0,a=0,b=0;
switch(x){
case 0: b++;
case 1: a++;
case 2: a++;b++;
}
printf(“a=%d,b=%d”,a,b);}
该程序的输出结果是( )
A:a=2,b=1
B:a=1,b=0
C:a=2,b=2
D:a=1,b=1
正确答案:【a=2,b=2】
第五章 单元测试
1、对于do…while语句,下列说法中正确的是( )
A:用do…while语句可实现分支程序设计
B:当循环条件不成立时,一次也不执行循环体
C:do…while与while结构完全相同
D:当循环条件不成立时,至少也要执行一次循环体
正确答案:【当循环条件不成立时,至少也要执行一次循环体】
2、下列程序段执行时,若从键盘输入23,则输出为( )
int c,num;
scanf("%d",&num);
do
{c=num%10;printf("%d",c);
num=num/10;
}while(num>0);
printf("
");
A:3,2
B:2, 3
C:2
D:3
正确答案:【3,2】
3、有以下程序
main( )
{ int i,s=0;
for(i=1;i<10;i++) s=s+i;
printf(“%d”,s);
}
程序执行后的输出结果是 ( )
A:自然数1~9的累加和
B:自然数1~10的累加积
C:自然数1~10中的偶数之和
D:自然数1~9中的奇数之和
正确答案:【自然数1~9的累加和】
4、若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是( )
for (i=5;i;i–)
for(j=0;j<4;j++){…}
A:25
B:20
C:24
D:30
正确答案:【25】
5、有以下程序段
int k = 10 ;
while( k == 0 ) k = k – 1 ;
则下面描述中正确的是( )
A:循环体语句一句也不执行
B:while循环执行10次
C:循环体语句执行一次
D:循环是无限循环
正确答案:【循环体语句一句也不执行】
第六章 单元测试
1、C语言中,下列不合法的字符常量是( )
A:‘&’
B:‘ÿ’
C:‘5’
D:‘8’
正确答案:【‘8’】
2、有以下程序
main()
{ char a,b,c,d;
scanf{"%c,%c,%d,%d",&a,&b,&c,&d);
printf{"%c,%c,%c,%c
",a,b,c,d);}
若运行时从键盘上输入:6,5,65,66 <回车> 。则输出结果是( )
A:6,5,6,6
B:6,5,6,5
C:6,5,65,66
D:6,5,A,B
正确答案:【6,5,A,B】
3、有定义语句: int b;char c[10];, 则正确的输入语句是( )
A:scanf("%d%s",&b,c);
B:scanf("%d%s",b,c);
C:scanf("%d%s",&b,&c);
D:scanf("%d%s",b,&c);
正确答案:【scanf("%d%s",&b,c);】
4、以下程序运行后的输出结果是( )。
main()
{ char c1,c2;
for(c1='0',c2='5';c1<c2;c1++,c2–) printf("%c%c",c1,c2);
printf("
");
}
A:012345
B:543210
C:035241
D:051423
正确答案:【051423】
5、已知字符A的ASCII代码值为65, 以下程序运行时若从键盘输入: B33<回车>。则输出结果是( )。
#include <stdio.h>
main()
{ char a,b;
a=getchar();scanf("%d",&b);
a=a-'A'+'0'; b=b*2;
printf("%c %c"a,b); }
A:2 B
B:1 B
C:1 A
D:2 A
正确答案:【1 B】
第七章 单元测试
1、#include<stdio.h>
func(int x)
{ x=10;
printf(“%d, ”,x); }
main( )
{ int x=20;
func(x);
printf(“%d”, x); }
运行结果为( )
A:10, 20
B:20,10
C:10, 10
D:20, 20
正确答案:【10, 20 】
2、有以下程序
int f(int a)
{ return a%2;}
main()
{ int s[8]={1,3,5,2,4,6},i,d=0;
for(i=0;f(s[i]);i++)d+=s[i];
printf("%d",d);}
程序运行后的输出结果是( )
A:21
B:9
C:11
D:19
正确答案:【9】
3、#include <stdio.h>
void main()
{ int max(flaot x, float y);
float a, b;
int c;
scanf(“%f,%f”, &a, &b);
c=max(a, b);
printf(“Max is %d”, c);}
int max(float x, float y)
{ float z;
z = x > y ? x : y;
return z;}
函数max的返回值是什么数据类型( )
A:无返回值
B:int
C:void
D:float
正确答案:【int】
4、以下叙述中正确的是( )
A:形参可以使用的存储类说明符与局部变量完全相同
B:任何存储类的变量在未赋初值时,其值都是不确定的
C:全局变量说明为static存储类,其作用域将被扩大
D:局部交量说明为static存储类,其生存期将得到延长
正确答案:【局部交量说明为static存储类,其生存期将得到延长】
5、程序中对fun函数有如下说明
void *fun();
此说明的含义是( )
A:fun函数无返回值
B:fun函数的返回值可以是任意的数据类型
C:fun函数的返回值是无值型的指针类型
D:指针fun指向一个函数,该函数无返回值
正确答案:【fun函数的返回值是无值型的指针类型】
第八章 单元测试
1、“&”称为取地址运算符
A:错
B:对
正确答案:【对】
2、以下程序段的输出结果是( )
int var,ab;
ab=100;
var=&ab;
ab=var+10;
printf("%d
",*var);
A:110
B:90
C:100
D:不确定
正确答案:【110】
3、指针的基类型是指指针的类型
A:错
B:对
正确答案:【错】
4、两个指针变量的值相等时,表明两个指针变量是( )
A:指向同一内存单元地址或者都为空
B:占据同一内存单元
C:是两个空指针
D:都没有指向
正确答案:【指向同一内存单元地址或者都为空】
5、若有定义:int x,pb; 则以下正确的赋值表达式是( )
A:pb=&x
B:pb=&x
C:pb=x
D:pb=x
正确答案:【pb=&x】
第九章 单元测试
1、数组的下标从1开始
A:错
B:对
正确答案:【错】
2、C语言调用函数中,当数组名做实参时,实参和形参之间的传递方式是按地址传递
A:对
B:错
正确答案:【对】
3、若有以下定义:
double w[10];
则w数组元素下标的上限是10
A:错
B:对
正确答案:【错】
4、若有如下定义,则( )是对数组元素 int a[10] , p ; p=a ;的正确引用
A:(p+2)
B:&a[10]
C:p
D:a[11]
正确答案:【(p+2)】
5、若有以下定义和语句,且0<=i<5,则( )是对数组元素地址的正确表示
int a[]={1,2,3,4,5},*p,i; p=a;
A:&(a+i)
B:a++
C:&p
D:&p[i]
正确答案:【&(a+i)】
第十章 单元测试
1、已有定义: char a[]="xyz",b[]={'x','y','z'};, 以下叙述中正确的是( )
A:数组 a 和 b 的长度相同
B:其余说法都不对
C:a数组长度小于 b 数组长度
D:a 数组长度大于 b 数组长度
正确答案:【a 数组长度大于 b 数组长度】
2、有以下程序
main()
{ char s[]="ABCD",*p;
for(p=s+1;p<s+4;p++)printf("%s",p);}
程序运行后的输出结果是( )
A:B
C
D
B:A
B
C
D
C:BCD
CD
D
D:ABCD
BCD
CD
D
正确答案:【BCD
CD
D】
3、有以下程序
main()
{ char s[]="159",p;
p=s;
printf("%c",p++);
printf("%c",*p++);
}
程序运行后的输出结果是( )
A:59
B:16
C:12
D:15
正确答案:【15】
4、有以下程序
main()
{ char a[7]="a0a0";int i,j;
i=sizeof(a); j=strlen(a);
printf("%d %d
",i,j);
}
程序运行后的输出结果是( )
A:6 2
B:2 2
C:7 6
D:7 2
如无法购买,请复制网址,换浏览器打开 使用过程中有疑问联系QQ55089918
还木有评论哦,快来抢沙发吧~