和芍础茫刮憋贰屎库叙涛疾拳
第一章 单元测试
1、
C语言程序从什么开始执行?
A:程序中的main函数
B:包含文件中的第一个函数
C:程序中的第一条可执行语句
D:程序中第一个函数
答案: 程序中的main函数
2、
C语言程序的工作过程是:编辑、编译、连接、运行。
A:对
B:错
答案: 对
3、
下列正确的标识符是?
A:a2_i
B:a[i]
C:-a1
D:int i
答案: a2_i
4、
C语言中的简单数据类型包括?
A:整形、实型
B:整形、实型、逻辑型
C:整形、实型、字符型
D:整形、字符型
答案: 整形、实型、字符型
5、
在C++程序中,表达式5%2的结果是?
A:1
B:2
C:2.5
D:3
答案: 1
6、
若int x=2,y=3,z=4; 则表达式x<z?y:z的结果是?
A:0
B:3
C:2
D:4
答案: 3
7、
C++的程序是由什么组成的?
A:过程
B:子程序
C:函数
D:主程序和子程序
答案: 函数
8、
以数字0开头的整数是八进制整形常量。
A:对
B:错
答案: 对
9、
要求运算数据必须是整形的运算符号是?
A:/
B:%
C:<
D:!
答案: %
10、
C++程序的三种基本结构是顺序、选择、循环。
A:错
B:对
答案: 对
第二章 单元测试
1、
结构化程序设计的三种基本结构是顺序结构、循环结构和选择结构。
A:错
B:对
答案: 对
2、
switch语句和if语句不能混合使用。
A:错
B:对
答案: 错
3、
switch语句中可以没有break语句。
A:对
B:错
答案: 对
4、
为了避免嵌套的if-else语句的二义性,C/C++语言规定else总是与()组成配对关系。
A:同一行上的if
B:在其之前未配对的if
C:在其之前未配对的最近的if
D:距离最近的if
答案: 在其之前未配对的最近的if
5、
下述程序的输出结果是: ***
int main()
{
int a=5,b=0,c=0;
if(a=b+c)
cout<<‘***’;
else
cout<<‘$$$’;
return 0;
}
A:对
B:错
答案: 错
6、
以下程序的运行结果是s=2,t=3
#include <iostream>using namespace std;
int main()
{
int s=1,t=1,a=5,b=2;
if (a>0)
s++;
if (a>b)
t+=s;
else if (a==b)
t=5;
else
t=2*s;
cout<<‘s='<<s<<‘,t='<<t<<endl;
return 0;
}
A:错
B:对
答案: 对
7、
以下程序的运行结果是2.
int main()
{
int k=2;
switch(k)
{
case 1:cout<<k++; break;
case 2:cout<<k++;
case 3:cout<<k++; break;
case 4:cout<<k++;
default:cout<<“Full!”;
}
return 0;
}
A:对
B:错
答案: 错
8、
下面程序段执行结果为
char c = ‘0’+2;
switch {
{
case 1: cout<<‘A’; break;
case ‘2’: cout<<‘B’;
case 2: cout<<‘C’;
default: cout<<‘D’;
};
A:BC
B:BCD
C:A
D:D
答案: BCD
9、
以下是if语句的基本形式;if(表达式)语句,其中“表达式”:
A:必须是逻辑表达式
B:必须是关系表达式
C:必须是逻辑表达式或关系表达式
D:可以是任意合法的表达式
答案: 可以是任意合法的表达式
10、
if和else语句必须同时使用。
A:错
B:对
答案: 错
第三章 单元测试
1、
C/C++语言中while和do-while循环的主要区别是
A:while的循环控制条件比do-while的循环控制条件严格
B:do-while的循环体不能是复合语句
C:do-while的循环体至少无条件执行一次
D:do-while允许从外部转到循环体内
答案: do-while的循环体至少无条件执行一次
2、
以下正确的描述是
A:只能在循环体内和switch语句体内使用break语句
B:从多层循环嵌套中退出时,只能使用goto语句
C:continue语句的作用是结束整个循环的执行
D:在循环体内使用break语句或continue语句的作用相同
答案: 只能在循环体内和switch语句体内使用break语句
3、
若有以下语句
int x = 3;
do {
x -= 2;
cout<<x;
} while (!(–x));
A:是死循环
B:输出的是1
C:输出的是3和0
D:输出的是1和-2
答案: 输出的是1和-2
4、
下面程序段的执行结果是
int a,b,c,t;
a=1;
b=2;
c=2;
while(a<b<c)
{
t=a; a=b; b=t;
c–;
}
cout<<a<<“,”<<b<<“,”<<c<<endl;
A:1,2,0
B:
2,1,1
C:
1,1,0
D:
2,1,0
答案: 1,2,0
5、
当break语句用于do-while、for、while循环语句中时,可使程序终止循环。
A:对
B:错
答案: 对
6、
break和continue语句与if语句连用时,对if语句没有影响。
A:错
B:对
答案: 对
7、
以下程序段中,语句 cout<<m<<” “; 执行的次数是2次。
for(m=20;m>0;m–)
{ if(m % 6==0)
break;
cout<<m<<” “;
}
A:对
B:错
答案: 对
8、
以下程序段中,语句 cout<<m<<‘ ‘; 执行的次数是2次。
for(m=20;m>0;m–)
{ if(m % 6==0)
continue;
cout<<m<<‘ ‘;
}
A:错
B:对
答案: 错
9、
若定义int i,a,k,s; 是死循环的是
A:a=1;
while(a<10)
{
if(a<5) continue;
a++;
}
B:i=0;
while (1)
{
i++;
if(i==20)
break;
}
C:k=0;
do
{
k++; }while(k>0);
D:for (i=1;;i++)
{
if(i=-10) break;
s=s+i;
}
答案: a=1;
while(a<10)
{
if(a<5) continue;
a++;
};k=0;
do
{
k++; }while(k>0);
10、
以下程序的运行结果是153.
#include
using namespace std;
int main()
{ int n;
long t=1,s=0;
for(n=1;n<=5;n++)
{ t*=n;s+=t;}
cout<<s;
return 0;
}
A:错
B:对
答案: 对
第四章 单元测试
1、
关于函数嵌套,说法正确的是?
A:函数的定义和调用均可以嵌套
B:函数的定义和调用均不可以嵌套
C:函数的定义可以嵌套,但函数的调用不可以嵌套
D:函数的定义不可以嵌套,但函数的调用可以嵌套
答案: 函数的定义不可以嵌套,但函数的调用可以嵌套
2、
关于函数参数,说法正确的是?
A:实参与其对应的形参共同占用一个内存单元
B:实参与其对应的形参各占用独立的内存单元
C:形参是虚拟的,不占用内存单元
D:只有当实参和形参同名才占用一个内存单元
答案: 实参与其对应的形参各占用独立的内存单元
3、
下面关于函数的定义和实现,正确的是?
A:int Fun(int x, int y) { return x+y; }
B:void Fun(double x, y) { …… }
C:long Fact(int n); { …… return; }
D:long Fact(int n) { int n; …… return ; }
答案: int Fun(int x, int y) { return x+y; }
4、
对函数不正确的描述是?
A:允许函数递归调用
B:当用数组名作形参时,形参数组改变可使实参数组随之改变
C:函数形参的作用范围只是局限于所定义的函数内
D:函数说明必须在主调函数之前
答案: 函数说明必须在主调函数之前
5、
在调用函数时,如果实参是简单变量,它对应形参之间的数据传递方式是?
A:地址传递
B:由实参传给形参,再由形参传回实参
C:单向值传递
D:传递方式由用户指定
答案: 单向值传递
6、
C语言中函数返回值的类型是由()决定的。
A:形参的数据类型
B:return语句中的表达式类型
C:调用该函数时的实参的数据类型
D:函数定义时指定的类型
答案: 函数定义时指定的类型
7、
在函数调用时,以下说法正确的是?
A:函数调用后必须带回返回值
B:实际参数和形式参数可以同名
C:函数间的数据传递不可以使用全局变量
D:主调函数和被调函数总是在同一个文件里
答案: 实际参数和形式参数可以同名
8、
return语句作为函数的出口,在一个函数体内只能有一个。
A:对
B:错
答案: 错
9、
在函数体定义的变量为局部变量,只在该函数内有效。
A:错
B:对
答案: 对
10、
声明函数原型时,可为一个或多个形参指定默认参数值,如:
int f(int x=1, int y=5, int z);。
A:对
B:错
答案: 错
第五章 单元测试
1、
一个数组中的所有元素可以具有不同的数据类型。
A:对
B:错
答案: 错
2、
已知int a[3][4];则a[1,3]是对数组元素的正确引用。
A:对
B:错
答案: 错
3、
若二维数组A有m列,则计算任一元素A[i][j]在数组中相对位置的公式为?(假设A[0][0]位于数组的第一个位置上)
A:i*m+j
B:i*m+j-1
C:j*m+i
D:i*m+j+1
答案: i*m+j+1
4、
若定义a[][3]={1,2,3,4,5,6,7}; 则a数组中行的大小是?
A:2
B:4
C:3
D:不确定
答案: 3
5、
下面合法的数组定义是?
A:int x[]={1,2,3,4};
B:int x[][]={{2,1},{3,2}};
C:char str={“abcde”};
D:char str[4]=”abcd”;
答案: int x[]={1,2,3,4};
6、
对一维整型数组的正确定义为?
A:int a(10);
B:int n=10,a[n];
C:#define N 10
int a[N];
D:int n;a[n];
答案: #define N 10
int a[N];
7、
已知:int a[10]; 则对a数组元素的正确引用是?
A:a[10]
B:a[0]
C:a[3.5]
D:a(5)
答案: a[0]
8、
如有定义语句int a[]={2,8,3,9,4,7,5,6,6,4};,则数组a的大小是?
A:8
B:不确定
C:10
D:11
答案: 10
9、
给出以下定义: char x[ ]=”abcdefg”; char y[ ]={‘a’,’b’,’c’,’d’,’e’,’f’,’g’}; 则正确的叙述为?
A:数组x的长度小于数组y的长度
B:数组x的长度大于数组y的长度
C:数组x和数组y等价
D:数组x和数组y的长度相同
答案: 数组x的长度大于数组y的长度
10、
以下能对一维数组a进行初始化的语句是?
A:int a[3]={0,1,2};
B:int a{5}={10*1};
C:int a[5]=(0,1,2,3,4,);
D:int a(5)={};
答案: int a[3]={0,1,2};
上方为免费预览版答案,如需购买完整答案,请点击下方红字
为了方便下次阅读,建议在浏览器添加书签收藏本网页
添加书签方法:
1.电脑按键盘的Ctrl键+D键即可收藏本网页
2.手机浏览器可以添加书签收藏本网页
我们的公众号
打开手机微信,扫一扫下方二维码,关注微信公众号:萌面人APP
本公众号可查看各种网课答案,还可免费查看大学教材答案
狮钎耿然阀拇共释呸叹澄镀赐