1、 对于以下递归函数 f f f,调用 f ( 5 ) f(5) f(5),其返回值为 ( ( ( A ) ) ) 。
int f(int n) {
if (n)
return f(n - 1) + n;
return n;
}
2、 以下哪个操作符不能重载 ( ( ( C ) ) ) 。
3、 程序
char c[5]={'a','b','\0','c','\0'}; printf("%s",c);
的运行结果是 ( ( ( D ) ) ) 。
4、 下面关于 shared_ptr 说法错误的有 ? ( ( ( C ) ) ) 。
5、 对于任意一个类,析构函数的个数最多为 ( ( ( B ) ) ) 。
6、 64位系统下,
*p = NULL
和*p = new char[100]
,sizeof(p)
各为多少? ( ( ( D ) ) ) 。
7、 执行 C++ 程序时出现的 “溢出” 错误属于 ( ( ( D ) ) ) 错误。
8、 字符串
"A+K=47\n"
的长度为 ( ( ( B ) ) ) 。
9、 在下列关于 C++ 函数的叙述中,正确的是 ( ( ( C ) ) ) 。
10、 static 类型的变量,默认的初始化值是? ( ( ( A ) ) ) 。
11、 对于如下的这段程序,以下不合法的是 ( ( ( C ) ) ) 。
int f1(float);
int f2(char);
int f3(float);
int f4(float);
int (*pf)(float);
int (*p) (float) = &f1;
pf = &f4;
pf = &f2;
pf = f3;
12、 下述程序的输出是 ( ( ( A ) ) ) 。
#include
int main() {
static char *s[] = {
"black", "white", "pink", "violet"};
char **ptr[] = {
s+3, s+2, s+1, s}, ***p;
p = ptr;
++p;
printf("%s", **p+1);
return 0;
}
13、
int a = 8, b = 5, c;
, 执行语句c = a / b + 0.5;
后,c
的值为 ( ( ( C ) ) ) 。
14、 在C语言中,关于静态变量的说法,正确的是 ( ( ( C ) ) ) 。
15、 一个 C++ 项目中有 3 个 .h 文件,5 个 .cpp 文件,编译之后生成的 .obj 文件的数量是 ( ( ( B ) ) ) 。
16、 设有如下的程序段
char *ptr = NULL; char str[] = "hehe"; ptr = str;
,执行完上面的程序段后,*(ptr+4)
的值为 ( ( ( B ) ) ) 。
17、 有如下语句序列:
char str[10]; cin>>str;
当从键盘输入I love this blog
时,str
中的字符串是 ( ( ( D ) ) ) 。
I love this blog
I love thi
I love
I
18、 在结构化的程序设计中,模块划分的原则是 ( ( ( D ) ) ) 。
19、 下面的类型声明中正确是 ( ( ( D ) ) ) 。
int &a[4];
int &=b
int &&c
int d, *e = &d
20、 以下哪个式子有可能在某个进制下成立 ( ( ( A ) ) ) 。
13 * 14 = 204
12 * 34 = 568
14 * 14 = 140
1 + 1 = 109
21、
x = 6; x += x \-= x*x;
执行完毕以后,x
的值为 ( ( ( B ) ) ) 。
22、 char 类型值的数值范围为 ( ( ( C ) ) ) 。
23、 关于全局变量,下列说法正确的是 ( ( ( A ) ) ) 。
24、 如果函数不需要任何返回值,使用什么形式的函数声明? ( ( ( B ) ) ) 。
25、 哪个表示的是十六进制? ( ( ( B ) ) ) 。
26、 哪个表示的是八进制? ( ( ( A ) ) ) 。
27、 静态局部变量存储在进程的 ( ( ( D ) ) ) 。
28、 已知
x = 43
,ch = 'A', y=0;
则表达式(ch < 'B' && !y && x \- 43)
的值是 ( ( ( A ) ) ) 。
29、 已知
x = 43
,ch = 'A', y=0;
则表达式(ch < 'B' || !y && x \- 43)
的值是 ( ( ( B ) ) ) 。
30、
char w; int x; float y; double z;
则表达式:w * x \- z + y
值的数据类型是 ( ( ( B ) ) ) 。
31、 函数调用语句
func(rec1,rec2+rec3,(rec4,rec5));
中的实参的个数是 ( ( ( A ) ) ) 。
32、 X 定义如下,若存在
X a; a.x=0x11223344;
则a.y[1]
的值可能为 ( ( ( C ) ) ) 。
union X{
int x;
char y[4];
};
33、 对于指针的描述,正确的是 ( ( ( D ) ) ) 。
34、 -1 的补码是 ( ( ( A ) ) ) 。
35、 有关 C++ 中类的描述,错误的是 ( ( ( A ) ) ) 。
struct
和 class
都可以表示类,没有区别class
36、 对于十六进制数 0x1000,错误的是 ( ( ( A ) ) ) 。
37、 0xef0f 位与 0xfef3 的结果为 ( ( ( B ) ) ) 。
38、 0xef0f 位或 0xfef3 的结果为 ( ( ( B ) ) ) 。
39、 0xef0f 异或 0xfef3 的结果为 ( ( ( B ) ) ) 。
40、 ~0 的结果为 ( ( ( A ) ) ) 。
41、 1 左移 10 位的结果为 ( ( ( C ) ) ) 。
42、 1 右移 10 位的结果为 ( ( ( C ) ) ) 。
43、 1 右移 10 位的结果为 ( ( ( C ) ) ) 。
44、 有关 C++ 虚函数的概念,错误的是 ( ( ( C ) ) ) 。
virtual
45、 有关 C++ 构造函数的概念,错误的是 ( ( ( C ) ) ) 。
46、 有关 C++ 内存泄漏的概念,错误的是 ( ( ( C ) ) ) 。
47、 下列的常量定义中,错误的定义是 ( ( ( C ) ) ) 。
const int a = 20;
const double b = 20;
const char c;
const float a = 0;
48、 在 C++ 中的结构体是否可以有构造函数? ( ( ( C ) ) ) 。
49、
for(int x = 0 , y = 0; !x && y <= 5 ; y++)
语句执行循环的次数是多少次? ( ( ( B ) ) ) 。
50、 给出一段代码,问程序运行后输出结果为多少? ( ( ( B ) ) ) 。
int main() {
int m = 12, n = 34;
printf("%d%d", m++,++n);
printf("%d%d\n", n++,++m);
}
51、 执行
x=-1; do { x=x*x; } while (!x);
循环时,下列说法正确的是 ( ( ( A ) ) ) 。
52、
int x=3; do { printf("%d",x--);} while(!x);
该程序的输出结果是 ( ( ( A ) ) ) 。
53、 以下不能作为合法常量的是 ( ( ( B ) ) ) 。
54、
int a, &ra=a;
关于 ra 的描述中正确的是 ( ( ( B ) ) ) 。
55、 关于以下代码,哪个说法是正确的? ( ( ( D ) ) ) 。
cls::foo(){
delete this;
}
..
void func(){
cls *a = new cls();
a->foo();
}
56、 下列关于 shared_ptr 说法正确的是 ( ( ( A ) ) ) 。
57、 下列 new / delete 说法错误的是 ( ( ( A ) ) ) 。
58、 下列 new / delete 说法正确的是 ( ( ( A ) ) ) 。
59、 以下哪个不是 C++ 的特点 ( ( ( C ) ) ) 。
60、 根据以下程序,当调用
func(9999)
,输出值为 ( ( ( C ) ) ) 。
int func(x) {
int ctx = 0;
while(x) {
ctx ++;
x = x & (x-1);
}
return ctx;
}
61、 根据以下程序,当调用
func(7777)
,输出值为 ( ( ( B ) ) ) 。
int func(x) {
int ctx = 0;
while(x) {
ctx ++;
x = x & (x-1);
}
return ctx;
}
62、 有关指针和引用的说法,错误的是 ( ( ( C ) ) ) 。
63、
int a = 8, b = 0, c;
, 执行语句c = a / b + 0.5;
后,c
的值为 ( ( ( C ) ) ) 。
64、 在C语言中,关于静态变量的说法,错误的是 ( ( ( C ) ) ) 。
65、 一个 C++ 项目中有 9 个 .h 文件,55 个 .cpp 文件,编译之后生成的 .obj 文件的数量是 ( ( ( B ) ) ) 。
66、 设有如下的程序段
char *ptr = NULL; char str[] = "hehe"; ptr = str;
,执行完上面的程序段后,*(ptr + 191)
的值为 ( ( ( C ) ) ) 。
67、 有如下语句序列:
char str[10]; cin>>str;
当从键盘输入I-love this blog
时,str
中的字符串是 ( ( ( C ) ) ) 。
I love this blog
I love thi
I-love
I
68、 在结构化的程序设计中,对模块划分的原则的描述,不正确的是 ( ( ( B ) ) ) 。
69、 下面的类型声明中正确是 ( ( ( A ) ) ) 。
int a[4] = {5};
int b=
int &c
int d, *e = null
70、 0x90abcdef 转换成二进制的值是 ( ( ( A ) ) ) 。
0b10010000101010111100110111101111
0b10010000101010111100110111011111
0b10010000101110111100110111101111
0b10010000101010111101110111101111
71、
x = 3; x += x \-= x*x;
执行完毕以后,x
的值为 ( ( ( B ) ) ) 。
72、 int 类型值的数值范围为 ( ( ( C ) ) ) 。
73、 关于全局变量,下列说法错误的是 ( ( ( A ) ) ) 。
74、 对于以下函数声明,正确的是 ( ( ( B ) ) ) 。
75、 哪个表示的是八进制? ( ( ( B ) ) ) 。
76、 哪个表示的是二进制? ( ( ( C ) ) ) 。
77、 静态局部变量存储在进程的 ( ( ( C ) ) ) 。
78、 对于表达式
(5 += 5)
的值是 ( ( ( D ) ) ) 。
79、 对于表达式
(a + !-b **c / *d)
,共有 ( ( ( C ) ) ) 个一元运算符。
80、
char w; int x; float y; unsigned int z;
则表达式:w * x \- z + y
值的数据类型是 ( ( ( A ) ) ) 。
81、
(rec1,rec2+rec3,(rec4,rec5));
表达式最终的值是 ( ( ( D ) ) ) 。
82、 X 定义如下,若存在
X a; a.x=0x98765432;
则a.y[2]
的值可能为 ( ( ( A ) ) ) 。
union X{
int x;
char y[4];
};
83、 对于指针的描述,正确的是 ( ( ( C ) ) ) 。
84、 -2 的补码是 ( ( ( A ) ) ) 。
85、 有关 C++ 中类的描述,错误的是 ( ( ( A ) ) ) 。
struct
和 class
都可以表示类,没有区别class
struct
86、 对于十六进制数 0x10,正确的是 ( ( ( C ) ) ) 。
87、 6666 位与 8888 的结果为 ( ( ( C ) ) ) 。
88、 6666 位或 8888 的结果为 ( ( ( A ) ) ) 。
89、 6666 异或 8888 的结果为 ( ( ( D ) ) ) 。
90、 ~-1 的结果为 ( ( ( A ) ) ) 。
91、 1 左移 x x x 位的值为 ( ( ( B ) ) ) 。
92、 1 右移 x x x 位相当于 ( ( ( A ) ) ) 。
93、 1 右移 5 位的结果为 ( ( ( C ) ) ) 。
94、 有关 C++ 虚函数的概念,正确的是 ( ( ( A ) ) ) 。
95、 有关 C++ 构造函数的概念,正确的是 ( ( ( A ) ) ) 。
96、 有关 C++ 内存泄漏的概念,错误的是 ( ( ( A ) ) ) 。
97、 下列的常量定义中,错误的定义是 ( ( ( A ) ) ) 。
const int a = a;
const double b = 20;
const char c = 5.20f;
const float a = 0;
98、 在 C++ 中的结构体是否可以有构造函数? ( ( ( C ) ) ) 。
99、
for(int x = 0 , y = 0; y <= 5 ; y += x)
语句执行循环的次数是多少次? ( ( ( D ) ) ) 。
100、 以下哪个 while 语句是死循环 ( ( ( B ) ) ) 。
while(1) { break; }
while(1) { int a = 5; ++a;}
int a = 1; while(a++) {}
int a = 10; while(a--);
101、 对于以下递归函数 f f f,调用 f ( 4 ) f(4) f(4),其返回值为 ( ( ( D ) ) ) 。
int f(int n) {
if (n > 1)
return f(n - 1) + f(n - 2);
return 1;
}
102、 以下哪个操作符不能重载 ( ( ( C ) ) ) 。
103、 程序
char c[5]={'a','b','\,','c','\0'}; printf("%s",c);
的运行结果是 ( ( ( A ) ) ) 。
104、 下面关于 shared_ptr 说法错误的有 ? ( ( ( C ) ) ) 。
105、 对于析构函数的描述,错误的是 ( ( ( B ) ) ) 。
106、 64位系统下,
*p = new char[100]
,sizeof(p)
为多少? ( ( ( B ) ) ) 。
107、 1 加上 2 32 − 1 2^{32}-1 232−1 的结果为 ( ( ( D ) ) ) 。
108、 字符串
"A\0+K=47\n"
的长度为 ( ( ( B ) ) ) 。
109、 下面的类型声明中正确是 ( ( ( D ) ) ) 。
int &a[4];
int &b = 5
int &c
int d, *e = &d, **f = &e;
110、 以下哪个式子有可能在某个进制下成立 ( ( ( B ) ) ) 。
0 + 0= 15
1 + 1 = 10
14 + 14 = 0
1 + 1 = 109
111、
x = 666; x \-= x += x*x;
执行完毕以后,x
的值为 ( ( ( B ) ) ) 。
112、 unsigned char 类型值的数值范围为 ( ( ( C ) ) ) 。
113、 关于全局变量,下列说法正确的是 ( ( ( A ) ) ) 。
114、 如果函数不需要任何返回值,使用什么形式的函数声明? ( ( ( B ) ) ) 。
115、 哪个表示的是十六进制? ( ( ( B ) ) ) 。
116、 哪个表示的是八进制? ( ( ( A ) ) ) 。
117、 静态局部变量存储在进程的 ( ( ( D ) ) ) 。
118、 表达式
-&a[b]->c
和以下 ( ( ( B ) ) ) 等价 。
-(&a)[b]->c
-&(a[b])->c
-&((a[b])->c)
(-&)a[b]->c
119、 以下哪个运算符的优先级最低 ( ( ( D ) ) ) 。
120、
char w; int x; float y; double z;
则表达式:x * x + x \- w
值的数据类型是 ( ( ( C ) ) ) 。
121、 函数调用语句
func(rec1,rec2,(rec3,rec4,rec5));
中的实参的个数是 ( ( ( A ) ) ) 。
122、 以下哪个表达式的结果为真 ( ( ( C ) ) ) 。
~(a || a)
!a && a
!a || a
!a || a && !a
123、 -5 % -3 的结果是 ( ( ( B ) ) ) 。
124、 有关 C++ 虚函数的概念,正确的是 ( ( ( B ) ) ) 。
virtual
125、 有关 C++ 构造函数的概念,正确的是 ( ( ( C ) ) ) 。
126、 有关 C++ 内存泄漏的概念,错误的是 ( ( ( C ) ) ) 。
127、 下列的常量定义中,错误的定义是 ( ( ( C ) ) ) 。
const int a = 520;
const double b = 1314;
const char c;
const float a = 05201314;
128、 在 C++ 中的结构体是否可以有构造函数? ( ( ( D ) ) ) 。
129、
for(int x = 0; x <= 1313; x++)
语句执行循环的次数是多少次? ( ( ( B ) ) ) 。
130、 给出一段代码,问程序运行后输出结果为多少? ( ( ( A ) ) ) 。
int main() {
int n = 1032, m = 045;
printf("%d", m+++n++);
}
131、 执行
x=-1; do { x=x*x; } while (~x);
循环时,下列说法正确的是 ( ( ( D ) ) ) 。
132、
int x=3; do { printf("%d",x--);} while(x);
该程序的输出结果是 ( ( ( C ) ) ) 。
133、 以下不能作为合法常量的是 ( ( ( B ) ) ) 。
134、
int a, &ra=a;
关于 ra 的描述中正确的是 ( ( ( B ) ) ) 。
135、 关于以下代码,哪个说法是正确的? ( ( ( D ) ) ) 。
cls::foo(){
delete this;
}
..
void func(){
cls *a = new cls();
a->foo();
}
136、 下列关于 shared_ptr 说法正确的是 ( ( ( D ) ) ) 。
137、 下列 new / delete 说法正确的是 ( ( ( D ) ) ) 。
138、 ( ( ( A ) ) ) 不是构造函数的特征。
139、 32位系统中,以下代码输出 ( ( ( C ) ) ) 。
#include
#include
void pFunc(char s[100]) {
printf("%d",sizeof(s));
}
int main(void) {
char str[] = "Hello";
printf("%d",sizeof(str));
printf("%d",strlen(str));
char*p=str;
printf("%d",sizeof(p));
pFunc(str);
}
140、 有如下模板定义:
template
在下列对 fun 的调用中,错误的是: ( ( ( C ) ) ) 。T fun(T x,T y) {return x*x + y*y; }
141、 以下代码输出结果是 ( ( ( C ) ) ) 。
#include
#include
#include
void Test(void)
{
char *str = (char *) malloc(100);
strcpy(str, "hello");
free(str);
if (str) {
strcpy(str, "world");
printf(str);
}
}
int main(void) {
Test();
}
142、 有关链接的说法,错误的是 ( ( ( D ) ) ) 。
143、 编译过程分为四个过程,错误的是 ( ( ( D ) ) ) 。
144、 以下哪个不是 c++ 的内存分区 ( ( ( D ) ) ) 。
145、 函数中通过 new 申请的空间在 ( ( ( D ) ) ) 上。
146、 对下文的代码注释,描述错误的是 ( ( ( D ) ) ) 。
#include
int n, a[1010];
void swap(int *a, int *b) {
// (1)
int tmp = *a;
*a = *b;
*b = tmp;
}
int main() {
int i, j;
while(scanf("%d", &n) != EOF) {
for(i = 0; i < n; ++i) {
scanf("%d", &a[i]);
}
for(i = 0; i < n - 1; ++i) {
int min = i; // (2)
for(j = i+1; j < n; ++j) {
// (3)
if(a[j] < a[min]) {
min = j;
}
}
swap(&a[i], &a[min]); // (4)
}
for(i = 0; i < n; ++i) {
if(i)
printf(" ");
printf("%d", a[i]);
}
puts("");
}
return 0;
}
a[i]
到a[n-1]
选择一个最小的数,记录下标在min
中;a[i]
和a[min]
进行交换,其中 & 代表引用;147、 下列的常量定义中错误的定义是 ( ( ( C ) ) ) 。
const int a = 20;
const double b = 20;
const char char = 8;
const float a = 0;
148、 以下这段代码是对数组进行排序,请说出它是什么排序 ( ( ( D ) ) ) 。
#include
#include
#define maxn 1000001
#define maxk 100001
int a[maxn];
int cnt[maxk];
void Input(int n, int *a) {
for(int i = 0; i < n; ++i) {
scanf("%d", &a[i]);
}
}
void Output(int n, int *a) {
for(int i = 0; i < n; ++i) {
if(i)
printf(" ");
printf("%d", a[i]);
}
puts("");
}
void CountingSort(int n, int *a) {
// (1)
int i, top;
memset(cnt, 0, sizeof(cnt)); // (2)
for(i = 0; i < n; ++i) {
// (3)
++cnt[ a[i] ]; // (4)
}
top = 0; // (5)
for(i = 0; i < maxk; ++i) {
while(cnt[i]) {
// (6)
a[top++] = i; // (7)
--cnt[i]; // (8)
}
if(top == n) {
// (9)
break;
}
}
}
int main() {
int n;
while(scanf("%d", &n) != EOF) {
Input(n, a);
CountingSort(n, a);
Output(n, a);
}
return 0;
}
149、
t = 100; while(t--) {}
语句执行循环的次数是多少次? ( ( ( B ) ) ) 。
150、 给出一段代码,问程序运行后输出结果为多少? ( ( ( D ) ) ) 。
#include
#include
#include
int main(void) {
int i, j, k;
for(i = 0; i < 10; ++i) {
for(j = i+1; j < 10; ++j) {
for(k = j+1; j < 10; ++k) {
++i;
}
}
}
printf("%d%d%d\n", i, j, k);
}
151、 执行如下代码,下列说法正确的是 ( ( ( B ) ) ) 。
#include
#include
#include
int x, c = 0;
int main(void) {
x = -1;
do {
x = x*x;
--x;
++c;
} while (!x);
printf("%d\n", c);
}
152、
int x=3; do { printf("%d",x--);} while(!x + 4);
该程序的输出结果是 ( ( ( A ) ) ) 。
153、 以下不能作为合法常量的是 ( ( ( B ) ) ) 。
154、
int b, &rb=b;
关于 ra 的描述中正确的是 ( ( ( B ) ) ) 。
155、 关于以下代码,哪个说法是正确的? ( ( ( D ) ) ) 。
cls::foo(){
delete this;
}
..
void func(){
cls *a = new cls();
a->foo();
}
156、 下列关于堆栈的说法错误的是 ( ( ( D ) ) ) 。
157、 下列关于堆栈的说法错误的是 ( ( ( D ) ) ) 。
158、 下列关于 C++ 内存分区的说法,错误的是 ( ( ( D ) ) ) 。
159、 以下关于链接的说法,错误的是 ( ( ( A ) ) ) 。
160、 根据以下程序,当调用
func(8888)
,输出值为 ( ( ( A ) ) ) 。
int func(int x) {
int ctx = 0;
while(x) {
ctx ++;
x = x & (x-1);
}
return ctx;
}
161、 根据以下程序,当调用
func(6666)
,输出值为 ( ( ( A ) ) ) 。
int func(x) {
int ctx = 0;
while(x) {
ctx ++;
x = x & (x-1);
}
return ctx;
}
162、 有关指针和引用的说法,错误的是 ( ( ( A ) ) ) 。
163、
int a = 9, b = 2, c;
, 执行语句c = a / b + 0.5;
后,c
的值为 ( ( ( C ) ) ) 。
164、 在C语言中,关于静态变量的说法,正确的是 ( ( ( D ) ) ) 。
165、 有关 extern 关键字的表述,错误的是 ( ( ( C ) ) ) 。
extern "C" void f(int a,int b);
则告诉编译器在编译fun这个函数时候按着C的规矩去翻译,而不是C++的extern "C++" void f(int a,int b);
则告诉编译器在编译fun这个函数时候按着C++的规矩去翻译,而不是C的extern int g_val;
它的作用就是声明函数或全局变量的作用范围的关键字,其声明的函数和变量可以在本模块或其他模块中使用166、 有关 static 关键字的表述,错误的是 ( ( ( C ) ) ) 。
167、 有关 volatile 关键字的表述,正确的是 ( ( ( C ) ) ) 。
168、 有关 const 关键字的表述,不正确的是 ( ( ( D ) ) ) 。
const *int p
中p
代表指针常量169、 有关指针和引用的猫叔,错误的是 ( ( ( D ) ) ) 。
170、 有关c++的多态,表述错误的是 ( ( ( D ) ) ) 。
171、 关于动态绑定,表述错误的是 ( ( ( A ) ) ) 。
172、 unsigned int 类型值的数值范围为 ( ( ( B ) ) ) 。
173、 关于全局变量,下列说法错误的是 ( ( ( A ) ) ) 。
174、 对于智能指针的表述,错误的是 ( ( ( C ) ) ) 。
175、 内联函数的定义,错误的是 ( ( ( D ) ) ) 。
176、 关于初始化列表的表述,错误的是 ( ( ( D ) ) ) 。
177、 以下strcpy的实现中,哪一步有问题 ( ( ( C ) ) ) 。
char * strcpy(char * strDest,const char * strSrc) {
if ( (strDest == NULL) || (strSrc == NULL) ) // (1)
return NULL;
char * strDestCopy = strDest; // (2)
while ((*++strDest = *++strSrc) != '\0'); // (3)
*strDest = '\0'; // (4)
return strDestCopy;
}
178、 对于表达式
int x = 6; (x += x);
的值是 ( ( ( C ) ) ) 。
179、 对于表达式
(+a + !-b **c / *d)
,共有 ( ( ( D ) ) ) 个一元运算符。
180、
char w; int x; float y; unsigned int z;
则表达式:w * x \- z + (int)y
值的数据类型是 ( ( ( B ) ) ) 。
181、
(rec1,rec2,rect3,(rec4,rec5)) \- rect5;
表达式最终的值是 ( ( ( D ) ) ) 。
182、 X 定义如下,若存在
X a; a.x=0x98765432;
则a.y[2]
的值可能为 ( ( ( A ) ) ) 。
union X{
int x;
char y[4];
};
183、 对于指针的描述,正确的是 ( ( ( A ) ) ) 。
184、 0 的补码是 ( ( ( A ) ) ) 。
0b00000000000000000000000000000000
0b10000000000000000000000000000000
0b10000000000000000000000000000001
0b11111111111111111111111111111111
185、 以下哪种函数可以是虚函数是 ( ( ( A ) ) ) 。
186、 阅读以下代码,确定它实现的是 ( ( ( C ) ) ) 。
#include
int a[1010];
void input(int n, int *a) {
for(int i = 0; i < n; ++i) {
scanf("%d", &a[i]);
}
}
void output(int n, int *a) {
for(int i = 0; i < n; ++i) {
if(i)
printf(" ");
printf("%d", a[i]);
}
puts("");
}
void swap(int *a, int *b) {
int tmp = *a;
*a = *b;
*b = tmp;
}
void X(int n, int *a) {
// (1)
int i, j;
for(i = 0; i < n - 1; ++i) {
// (2)
int min = i; // (3)
for(j = i+1; j < n; ++j) {
// (4)
if(a[j] < a[min]) {
min = j; // (5)
}
}
swap(&a[i], &a[min]); // (6)
}
}
int main() {
int n;
while(scanf("%d", &n) != EOF) {
input(n, a);
X(n, a);
output(n, a);
}
return 0;
}
187、
x & (1 << k)
代表的是 ( ( ( C ) ) ) 。
188、
1 | 2 | 3 | 4 | 5
的结果为 ( ( ( D ) ) ) 。
189、
1 ^ 2 ^ 3 ^ 4 ^ 5
的结果为 ( ( ( D ) ) ) 。
190、 ~~-1 的结果为 ( ( ( B ) ) ) 。
191、 下列有关 this 指针表述,正确的是 ( ( ( C ) ) ) 。
192、 假定 C 为一个类,则该类的拷贝构造函数的声明语句是 ( ( ( C ) ) ) 。
193、 关于拷贝构造的表述,正确的是 ( ( ( C ) ) ) 。
194、 有关 C++ 虚函数的概念,正确的是 ( ( ( B ) ) ) 。
195、 有关 C++ 构造函数的概念,正确的是 ( ( ( D ) ) ) 。
196、 有关 C++ 内存泄漏的概念,错误的是 ( ( ( A ) ) ) 。
197、 下列的常量定义中,错误的定义是 ( ( ( A ) ) ) 。
const int a = a;
const double b = 1;
const int c = 5.20f;
const float a = 0.0f;
198、 已知表达式 ++a 中的 “++” 是作为成员函数重载的运算符, 则与 ++a 等效的运算符函数调用形式为 ( ( ( A ) ) ) 。
199、
for(int x = 2 , y = 0; y <= 5 ; y += x)
语句执行循环的次数是多少次? ( ( ( A ) ) ) 。
200、 以下哪个 while 语句是死循环 ( ( ( D ) ) ) 。
while(continue) { break; }
while(a) { int a = 5; ++a;}
int a = 1; while( a && !a) {}
int a = 10; while(1 + a * a);