第一章 单元测试
1、单选题:以下可以作为C++自定义标识符的是:
A:sqrt
B:break
C:123
D:dollar$
正确答案:【sqrt】
2、单选题:下列选项中合法的用户标识符是: A:3Dmax
B: A.dat
C: _2Text
D:10ng
正确答案:【 _2Text】
3、单选题:以下各选项组中,均可作为自定义标识符的组是: A: i while >=
B:public _No1 this
C:No1 Cout a
D:shod No.1 sta
正确答案:【No1 Cout a】
4、单选题:以下说明语句中,正确的是: A:int a,break;
B:int For,INT;
C:int x,%y;
D:int a.cpp;
正确答案:【int For,INT;】
5、单选题:以下不符合C++语法规则的数值常量是: A:0Xab23
B:2.1E3
C: 034
D:2E1.4
正确答案:【2E1.4】
6、单选题:存储下列数据,占用存储字节最多的是:
A:0
B: “0”
C: ‘0’
D:0.0
正确答案:【0.0】
7、单选题:执行语句unsigned a=-1;auto c=a;后,c的类型为: A:int
B:unsigned
C:long
D:char
正确答案:【unsigned】
8、单选题:在VC++中,基本数据类型所占字节长度,正确的是: A:char<int<double<float
B:char<short<int<double
C:char<short<float<int
D:char<int<float<double
正确答案:【char<short<int<double】
9、单选题:以下说明语句中,不存在语法错误的是 。
A:float X3-Dmax;
B:char X.txt[20];
C:int 10long;
D:int _2int;
正确答案:【int _2int;】
10、单选题:以下选项中,不能将字母A的ASCII码保存到变量ch的语句是: A:char x= “A”;
B:char x=65;
C:char x=’A’;
D:char x=’101’;
正确答案:【char x= “A”;】
第二章 单元测试
1、单选题:以下运算符中运算对象一定不能是double类型的是: A:/
B:<=
C:=
D:%
正确答案:【% 】
2、单选题:设有语句:char x=6,y=10;int z; z=(x^y)<<2; 则z的值是: A:3
B:-4
C:-52
D:48
正确答案:【48】
3、单选题:设有int s=-2; 则执行表达式s++||++s后s的值为: A:0
B:1
C:-1
D:-2
正确答案:【-1】
4、单选题:设有int a=3,b=2,x=4; 则cout<<(a<x<b)输出为: A:1
B:0
C:3
D:5
正确答案:【1】
5、单选题:若有声明int m=7,n=4;float a=38.4,b=6.4,x;则执行语句x=m/2*n+a/b+1/2;后,x的值为: A:20
B:18
C:18.5
D:20.5
正确答案:【18】
6、单选题:若有int a=1,b=2,c=3,d=4; 则表达式b<a?a:c<d?c:d的值为(运算符?:的结合性为从左向右):
A:2
B:4
C:1
D:3
正确答案:【3
】
7、单选题:执行下面语句: int i = -5; cout<<-(i++)<<“;”; cout<<i<<endl;
输出结果是下面哪一个?
A:5; -5
B:4;-4
C:5;-4
D:4;-5
正确答案:【5;-4 】
8、单选题:尝试执行下面语句: unsigned int i = 2; int j = -3; cout<<(i*j)<<endl;
输出结果是下面哪一个?
A:一个无符号整数
B:6
C: -6
D:编译出错,无输出
正确答案:【一个无符号整数 】
9、单选题:下列字符串常量表示中,错误的是()。
A:””yes”or”
B: “Right””
C:”ABCDt”
D:”abcdef”
正确答案:【””yes”or”】
10、单选题:设int a=5,b;,执行以下代码后,b的值不为2的是: A:b=a/2;
B:b=a>>1;
C:b=a^7;
D:b=6-(a–);
正确答案:【b=6-(a–); 】
第三章 单元测试
1、单选题:执行以下语句:for(int k=43210;k=k/10;cout<<k%10); 其输出结果是: A:1234
B:4321
C:43210
D:01234
正确答案:【1234】
2、单选题:执行程序段: int x,y; x=3; do { y=x–; if(!y) {cout<<‘#’; continue;} cout<<‘#’; } while((x=1)||(x=2));
A:将进入死循环
B:含有不合法的控制表达式
C:将输出###
D:将输出##
正确答案:【将进入死循环】
3、单选题:执行程序段: int x=6; do { if(x%3) {cout<<‘#’; continue;} } while(x–);
A:将输出#
B:将输出###
C:将输出##
D:将输出####
正确答案:【将输出####】
4、单选题:执行以下语句,输出结果是int x=3; do{ cout<<(x-=2)<<” “; }while(!–x);
A: 0 -1
B: 0 -2
C: 3 0
D: 1
正确答案:【 0 -2 】
5、单选题:执行程序段 int k=5,n=0; while(k–) switch(k) { case 1: case 3:n+=1;break; default:n+=2; case 2: case 4: n+=3;break; }后,n和k的值分别为:
A:8 0
B:10 -1
C:13 -1
D:10 0
正确答案:【13 -1 】
6、单选题:以下语句段执行结果: int a=2,b=0;while(!b–)cout<<a–<<‘ ‘<<b;
A:没有输出
B:2 -1
C:1 -1
正确答案:【2 -1 】
7、单选题:在下列选项中,没有构成死循环的语句段是: A:int i=100;while(1){i=i%100;if(i>=100)break;}
B:int s=3;while(s);–s;
C:for(;;);
D:int k=1000;do{k;}while(k>1000);
正确答案:【int k=1000;do{k;}while(k>1000); 】
8、单选题:以下说法正确的是: A:while语句中,循环体语句可能是一条语句,也可能没有语句。
B:执行do-while语句时,可能不执行循环体语句。
C:do-while语句总能用while或for语句实现
D:for语句如果第2个表达式为空,则必然进入死循环。
正确答案:【do-while语句总能用while或for语句实现】
9、单选题:下面程序输出是:using namespace std;#include <iostream>
int t(){
static int i;
i+=5;
return i;
}
int main(void){
cout << t() << ‘t’;
cout << t() << ‘n’;
return 0 ;
}
A:5 10
B:随机数
C:5 5
D:0 5
正确答案:【5 10 】
10、单选题:以下关于文件包含的描述中正确的是_____
A:每个C++程序必须包含预处理命令:#include <iostream.h>
B:#include 后面的文件名用双引号(””)括起和尖括号(<>)括起完全等效
C:用#include 所包含的文件称为头文件,必须以.h作为扩展名
D:#include 命令行可以出现在源程序中需要的任意行
正确答案:【#include 命令行可以出现在源程序中需要的任意行】
第四章 单元测试
1、单选题:
设有“#define M(a,b,c) a*b-c”,执行“cout<<M(2+3,2+3,4);”输出为
A:21
B:0
C:7
D:1
正确答案:【7】
2、单选题:
若有宏:
#define AA 10
#define D(x) x*x
则执行cout<<D(1+2)*AA;,输出结果为:
A:50
B:编译出错
C:23
D:90
正确答案:【23】
3、单选题:考虑函数原型void test(int,char=’*’,int=7); 以下合法的函数调用是: A:test(5,”0″);
B:test(5,”&” ,6);
C:test(5)
D:test(5,6,”%”);
正确答案:【test(5)】
4、单选题:下列定义中不正确的是: A:#define PI 3.1415926
B:#define S345
C:int max(x,y);
D:static char c;
正确答案:【int max(x,y); 】
5、单选题:以下正确的说法是:
A:用户调用标准库函数前,不必使用预编译命令将该函数所在文件包括到用户源文件中
B:用户可以重新定义标准库函数,若如此,该函数将失去原有含义
C:系统不允许用户重新定义标准库函数
D:用户调用标准库函数前,必须重新定义
正确答案:【用户可以重新定义标准库函数,若如此,该函数将失去原有含义】
6、单选题:要求通过函数来实现一种不太复杂的功能,并且要求加快执行速度,选用:
A:内联函数
B:递归函数
C:带缺省值的函数
D:重载函数
正确答案:【内联函数】
7、单选题:不能作为重载函数的调用的依据是
A:参数个数
B:函数返回类型
C:函数名称
D:参数类型
正确答案:【函数返回类型】
8、单选题:
尝试执行下面程序:using namespace std;#include <iostream>
void f(int n){
if (n/10){ cout<<n%10<<“,”; f(n/10);}
else cout<<n;
}
int main(){ f(638); cout<<endl; return 0; }
输出结果为:
A:8,3
B:8,3,6
C:6,3,8
D:语法错
正确答案:【8,3,6 】
9、单选题:下面程序输出是:using namespace std;#include <iostream>
int t(){
static int i;
i+=5;
return i;
}
int main(void){
cout << t() << ‘t’;
cout << t() << ‘n’;
return 0 ;
}
A:5 10
B:5 5
C:随机数
D:0 5
正确答案:【5 10】
10、单选题:以下关于文件包含的描述中正确的是_____
A:#include 命令行可以出现在源程序中需要的任意行
B:用#include 所包含的文件称为头文件,必须以.h作为扩展名
C: #include 后面的文件名用双引号(””)括起和尖括号(<>)括起完全等效
D:每个C++程序必须包含预处理命令:#include <iostream.h>
正确答案:【#include 命令行可以出现在源程序中需要的任意行】
第五章 单元测试
1、单选题:执行下面语句,输出结果是______。 int b[3][3] = {0,1,2,0,1,2,0,1,2},t = 1; for(int i = 0; i < 3; i++) for(int j = i; j <= i; j++) t += b[i][i] + b[j][j]; cout<<t<<endl;
A:7
B:6
C:9
D:4
正确答案:【7】
2、单选题:以下正确的数组定义语句是:
A:
int b[2][ ]={{1}, {2}};
B:
char a[5]={‘1’, ‘2’, ‘3’, ‘4’, ‘5’, ”};
C:char d[5]=”CHINA”;
D:
float c[ ][3]={1, 2, 3, 4, 5};
正确答案:【
float c[ ][3]={1, 2, 3, 4, 5};
如有任何疑问请及时联系QQ 50895809反馈