华工C++随堂练习答案[优秀]_华工c随堂练习
华工C++随堂练习答案[优秀]由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“华工c随堂练习”。
2016华南理工大学网络教育C++随堂练习
1.一个最简单的C++程序,可以只有一个()。
(A)库函数
(B)自定义函数
(C)main函数
(D)空函数
答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
2.函数名是(),用于识别和调用函数。
(A)关键字
(B)标识符
(C)常数
(D)语句
答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
3.用C++语言编写的源程序要成为目标程序必须要经过()。
(A)解释
(B)汇编
(C)编辑
(D)编译
答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
4.C++程序中的简单语句必须以()结束。
(A)冒号
(B)分号
(C)空格
(D)花括号
答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
5.程序中把表达式“a+0.5”写为“a*0.5”,是()错误。
(A)编译
(B)连接
(C)运行
(D)逻辑
答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
1.在下列选项中,全部都是C++关键字的选项为()。
(A)while IF Static(B)break char go
(C)sizeof case extern(D)switch float integer 答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
2.按C++标识符的语法规定,合法的标识符是()。
(A)_abc(B)new(C)π(D)“age” 答题:
A.B.C.D.(已提交)参考答案:A 问题解析:
3.在C++语句中,两个标识符之间()不能作为C++的分隔符。
(A)数字
(B);(C):(D)+ 答题:
A.B.C.D.(已提交)参考答案:A 问题解析:
4.可以用于命名变量的标识符是()。
(A)3x(B)const(C)name_2(D)a.com 答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
5.说明变量a是整型变量的正确语句是()。
(A)int a;(B)inta;(C)Int a;(D)INTa;答题:
A.B.C.D.(已提交)参考答案:A 问题解析:
1.下列正确的八进制整型常量表示是()。
(A)0a0(B)015(C)080(D)0x10 答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
2.下列错误的十六进制整型常量表示是()。
(A)0x11(B)0xaf(C)0xg(D)0x1f 答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
3.在下列选项中,全部都合法的浮点型数据的选项为()。
(A)-1e3.5
15.2e-4
(B)12.34
-1e+5
0.1E-12(C)0.2e-2
-12345.e-5
(D)5.0e(1+4)0.1
8e+2 答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
4.在下列选项中,正确的字符常量为()。
(A)“a”(B)'name'(C)a(D)'101' 答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
5.下列选项中,结果等于false的是()。
(A)1
A.B.C.D.(已提交)参考答案:C 问题解析:
1.在下列选项中,()不能交换变量a和b的值。
(A)t=b;b=a;a=t;(B)a=a+b;b=a-b;a=a?b;
(C)t=a;a=b;b=t;(D)a=b;b=a;答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
2.关于下列语句,叙述错误的是()。
int i=10,?p=&i;
(A)p的值为10(B)p指向整型变量i
(C)?p表示变量i的值
(D)p的值是变量i的地址
答题:
A.B.C.D.(已提交)参考答案:A 问题解析:
3.有以下变量说明,下面不正确的赋值语句是()。
int a=5, b=10, c;int ?p1 = &a, ?p2 = &b;
(A)?p2 = b;(B)p1 = a;
(C)p2 = p1;(D)c = ?p1 ?(?p2);答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
4.有以下变量说明,下面正确的语句是()。
int a=10, b;int &pa=a, &pb=b;
(A)&pb = a;(B)pb = pa;(C)pb = &pa;(D)?pb = ?pa;答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
5.执行下面语句序列后,a和b的值分别为()。
int a=5, b=3, t;
int &ra=a;
int &rb=b;
t=ra;ra=rb;rb=t;
(A)3和3(B)3和5(C)5和3(D)5和5 答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
1.假设有说明 int a=0;double x=5.16;,则在以下语句中,((A)x=a/x;(B)x=x/a;(C)a=a%x;(D)x=x?a;答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
2.在下列运算符中,()优先级最高。
(A)
A.B.C.D.(已提交)参考答案:D)属于编译错误。问题解析:
3.在下列运算符中,()优先级最低。
(A)!(B)&&(C)!=(D)? : 答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
4.已知int i=1, j=2;,则表达式 i+++j 的值为()。
(A)1(B)2(C)3(D)4 答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
5.已知int i=1, j=2;则表达式 ++i+j 的值为()。
(A)1(B)2(C)3(D)4 答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
6.在下列表达式选项中,()是正确。
(A)++(a++)(B)a++b(C)a+++b(D)a++++b 答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
7.已知 int i=0, j=1, k=2;则逻辑表达式 ++i ||--j && ++k 的值为(。)
(A)0(B)1(C)2(D)3 答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
8.执行下列语句后,x和y的值是()。
int x, y;
x=y=1;++x || ++y;
(A)1和1(B)1和2(C)2和1(D)2和2 答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
9.设x为整型变量,不能正确表达数学关系 1<x<5 的C++逻辑表达式是((A)1
(C)1=5)答题:
A.B.C.D.(已提交)参考答案:A 问题解析:
10.已知 int x=5;执行下列语句后,x的值为()。
x+=x-=x?x;
(A)25(B)40(C)?40(D)20 答题:
A.B.C.D.(已提交)参考答案:C。)问题解析:
11.设 int a=1, b=2, c=3, d=4;则以下条件表达式的值为()。
a
(A)1(B)2(C)3(D)4 答题:
A.B.C.D.(已提交)参考答案:A 问题解析:
12.以下逗号表达式的值为()。
(x=4?5, x?5), x+25
(A)25(B)20(C)100(D)45 答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
1.控制台程序中需要使用cin和cout输出/输入,include指令包含的头文件是((A)cmanth(B)conio.h(C)iostream(D)iomanip 答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
2.使用标准命名空间的语句是()。
(A)using namespace std;(B)using namespace iostream。)
(C)include std;(D)include iostream;答题:
A.B.C.D.(已提交)参考答案:A 问题解析:
3.有语句 double x, y;以下正确的输入语句是()。
(A)cin
(B)cin
(C)cin
答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
4.有语句 int a=1, b=2;以下正确的输出语句是()。
(A)cout
(B)coutb?a:b
(C)cout
(D)cout
答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
5.以输出宽度为8输出变量x值的语句是()。
(A)cout
(C)cout
D)
(答题:
A.B.C.D.(已提交)参考答案:A 问题解析:
1.已知 int i=0, x=1, y=0;,在下列选项中,使i的值变成1的语句是()。
(A)if(x&&y)i++;(B)if(x==y)i++;
(C)if(x||y)i++;(D)if(!x)i++;答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
2.已知 int i=0, x=1, y=0;,在下列选项中,使i的值变成1的语句是()。
(A)if(x){if(y)i=1;else i=0;}(B)if(x){if(y)i=1;} else i=0;
(C)if(x)i=0;else { if(y)i=1;}(D)if(x)i=1;else {if(y)i=0;} 答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
3.设有函数关系为y=,下列选项中,能正确表示上述关系的是()。(A)y = 1;
if(x >= 0)
if(x == 0)y = 0;
else y =-1;
(B)y =-1;
if(x!= 0)
if(x > 0)y = 1;
else y = 0(C)if(x
if(x
else y = 0;
else y = 1;
(D)y =-1;
if(x
if(x
else y = 0;
答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
4.设i=2,执行下列语句后i的值为()。
switch(i)
{ case 1 : i ++;
case 2 : i--;
case 3 : ++ i;break;
case 4 :--i;
default : i ++;
}
(A)1(B)2(C)3(D)4 答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
5.执行下列语句后,输出显示为()。
char ch='A';
switch(ch)
{
case 'A' : ch++;
case 'B' : ch++;
case 'C' : ch++;
} cout
(A)A(B)B(C)C(D)D 答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
1.已知int i=0,x=0;,在下面while语句执行时循环次数为(while(!x && i
(A)4(B)3(C)2(D)1 答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
2.已知int i=3;,在下面do_while 语句执行时的循环次数为(do{ i--;cout
(A)1(B)2(C)3(D)无限
答题:
A.B.C.D.(已提交)
。))参考答案:B 问题解析:
3.下面for语句执行时的循环次数为()。
int i, j;
for(i=0, j=5;i=j;)
{ cout
(A)0(B)5(C)10(D)无限
答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
4.以下程序段形成死循环的是()。
(A)int x;for(x=0;x
(B)int k = 0;do { ++k;} while(k>=0);
(C)int a=5;while(a){ a--;};
(D)int i=3;for(;i;i--);
答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
5.执行以下程序段后,x的值是()。
{ int i, j, x = 0;
for(i=0;i
{ x++;
for(j=0;j
{ if(j)continue;
x++;
}
}
(A)8(B)12(C)14(D)16 答题:
A.B.C.D.(已提交)参考答案:A 问题解析:
1.有 if;若整型变量a和b的值都不等于0时执行,则逻辑表达式是()。
(A)a&b(B)a&&b(C)a!=b(D)a-b!=0 答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
2.有 if;若整型变量a、b的值相等时执行,则逻辑表达式是()。
(A)a=b(B)a!=b(C)a-b(D)!(a-b)答题:
A.B.C.D.(已提交)参考答案:D 问题解析: 3.有语句
for(int i=1;i
if(!(i%3))cout
)。
(A)1 2 3(B)1 2 4 5(C)3 6 9(D)4 5 6 答题:
A.B.C.D.(已提交)参考答案:C 问题解析: 4.有语句
int i=5, sum=0;
while(i--){ sum+=i%2;}
循环结束后,sum的值等于()。
(A)2(B)3(C)4(D)5 答题:
A.B.C.D.(已提交)参考答案:A 问题解析: 5.有语句
int a=5, b=1;
while(a-b){ a--;b++;}
循环体执行的次数是()。
(A)1(B)2(C)3(D)4 答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
1.以下程序段输出结果是()。
int i,n=0;
for(i=0;i
{
if(i%3)break;
n++;
} cout
(A)1(B)2(C)3(D)4
答题:
A.B.C.D.(已提交)参考答案:A 问题解析:
2.以下程序段输出结果是()。
int i,n=0;
for(i=0;i
{
if(i%3)continue;
n++;
}
cout
(A)1(B)2(C)3(D)4 答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
3.以下程序段输出结果是()。
int i,n=0;
for(i=0;i
{
if(i>2)goto out;
n++;
} out: cout
(A)1(B)2(C)3(D)4
答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
1.以下正确的函数原型为()。
(A)fun1(int x;int y);(B)void fun1(x, y);
(C)void fun1(int x, y);(D)void fun1(int, int);答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
2.有函数原型 int f2(int, int);以下正确的调用语句是()。
(A)int a=fun2(1);(B)cout
(C)int a=fun2(1)+fun(2);(D)cout
A.B.C.D.(已提交)参考答案:B 问题解析:
3.有函数原型 void f3(double);以下正确的调用语句是()。
(A)double a=fun3(0.15);(B)fun3(0.34);
(C)double a=fun3(0.1)+f3(0.2);(D)cout
A.B.C.D.(已提交)参考答案:B 问题解析:
4.以下正确的函数定义是()。
(A)int fun4(int a, int b){ return a+b;}(B)void fun4(int a, int b){ return a+b;}
(C)int fun4(int a, int b){ fun4 = a+b;}(D)void fun4(int a, int b){ fun4 = a+b;} 答题:
A.B.C.D.(已提交)参考答案:A 问题解析:
5.以下正确的函数定义是()。
(A)void fun5();{ cout
(C)void fun5(){ cout
A.B.C.D.(已提交)参考答案:C 问题解析:
1.有函数原型 void fun6(int);,在下列选项中,不正确的调用是()。
(A)int a = 21;fun6(a);(B)int a = 15;fun6(a3);
(C)int b = 100;fun6(&b);(D)fun6(256);答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
2.有函数原型 void fun7(int *);,在下列选项中,正确的调用是()。
(A)double x = 2.17;fun7(&x);(B)int a = 15;fun7(a*3.14);
(C)int b = 100;fun7(&b);(D)fun7(256);答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
3.有函数原型 void fun8(int &);,在下列选项中,正确的调用是()。
(A)int a = 2.17;fun8(&a);(B)int a = 15;fun8(a?3.14);
(C)int b = 100;fun8(b);(D)fun8(256);答题:
A.B.C.D.(已提交)参考答案:C 问题解析: 4.有声明
void fun9(int ? &);int a, int ?p = &a;
在下列选项中,正确的调用是()。
(A)fun9(&a);(B)fun9(p);(C)fun9(?a);(d)fun9(?p);答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
5.5以下正确的函数定义是()。
(A)int * fun10(double x){ return x;}(B)int * fun10(double x){ return &x;}
(C)int * fun10(int a){ return *a;}(D)int * fun10(int a){ return &a;} 答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
6.函数参数的默认值不允许为()。
(A)全局常量
(B)直接常量
(C)局部变量
(D)函数调用
答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
1.在C++中,一个项目可以包含多个函数,它们之间是()。
(A)独立定义的(B)嵌套定义的(C)根据调用关系定义的(D)根据调用顺序定义的答题:
A.B.C.D.(已提交)参考答案:A 问题解析:
2.一个项目中只能有一个的函数是()。
(A)系统库函数
(B)自定义函数
(C)主函数
(D)在其他文件中定义的函数
答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
3.一个项目中包含3个函数:main、fa和fb函数,它们之间不正确的调用是((A)在main函数中调用fb函数
(B)在fa函数中调用fb函数
(C)在fa函数中调用fa函数
(D)在fb函数中调用main函数
答题:
A.B.C.D.(已提交)参考答案:D。)问题解析:
4.实现函数调用需要()进行信息管理。
(A)队列
(B)堆栈
(C)数组
(D)参数
答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
5.关于递归调用不正确的描述是()。
(A)递归调用和嵌套调用都是通过堆栈管理实现的(B)函数直接或间接调用自己称为递归调用
(C)递归终止条件必须为参数值等于0
(D)递归算法的问题规模必须是逐步缩小的答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
1.有以下函数定义,该函数的类型是()。
double fun11(int ary[], int len)
{ /*……*/ }
(A)double fun11(int ary[], int len)(B)double fun11(int [], int)
(C)double(int[], int)(D)double 答题:
A.B.C.D.(已提交)参考答案:C 问题解析: 2.有说明语句:
typedef double funt(double);funt fun12;
以下叙述正确的是()。
(A)funt和 fun12是类型相同的函数
(B)fun12是funt类型的变量
(C)funt是返回typedef double类型的函数(D)fun12是funt类型的函数
答题:
A.B.C.D.(已提交)参考答案:D 问题解析: 3.有语句
typedef double funt(double);funt fun13, *pfun;
则以下正确的赋值语句是()。
(A)pfun=fun13;(B)*pfun=fun13;(C)pfun=funt;(D)*pfun=funt;答题:
A.B.C.D.(已提交)参考答案:A 问题解析: 4.有语句
typedef double funt(double);funt fun13, fun14, *pfun;
则以下不正确的赋值语句是()。
(A)pfun=fun13;(B)pfun=&fun14;
(C)pfun=*fun13;(D)fun13=fun14;答题:
A.B.C.D.(已提交)参考答案:A 问题解析: 5.有声明
int fun14(int);int(?pf)(int)= fun14;
在下列选项中,正确的调用是()。
(A)int a=15;int n=fun14(&a);(B)int a = 15;cout
(C)cout
A.B.C.D.(已提交)参考答案:A 问题解析:
1.指定内联函数的关键字是()。
(A)include(B)inline(C)namespace(D)typedef 答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
2.内联函数的正确定义是()。
(A)inline int small();int small(){ /*……*/ }
(B)int small();inline int small(){ /*……*/ }
(C)int inline small();int small(){ /*……*/ }
(D)int small();int inline small(){ /*……*/ } 答题:
A.B.C.D.(已提交)参考答案:A 问题解析:
3.使用重载函数编程序的目的是()。
(A)使用相同的函数名调用功能相似的函数
(B)共享程序代码
(C)提高程序的运行速度
(D)节省存储空间
答题:
A.B.C.D.(已提交)参考答案:A 问题解析:
4.重载函数要求()。
(A)函数名不同,函数参数个数相同
(B)函数名不同,函数参数类型相同
(C)函数名相同,函数类型各不相同
(D)函数名相同,函数类型也相同
答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
5.以下正确的重载函数是()。
(A)int same(int, double);double same(int, double);
(B)int same1(int, double);int same2(int, double);
(C)int same(int =0);int same(int);
(D)int same(int, double);int same(int, double, double);答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
1.自动存储变量是指()。
(A)自动指定存储地址的变量
(B)自动更新数据的变量
(C)在程序块执行时生成,块结束时释放的变量
(D)在项目执行时生成,项目结束时释放的变量
答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
2.在函数中声明的静态变量()。
(A)在函数体中可见,函数结束调用时释放。
(C)在项目中可见,函数结束调用时释放。
(B)在函数体中可见,项目结束调用时释放。
(D)在项目中可见,项目结束调用时释放。
答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
3.语句标号的作用域是()。
(A)函数
(B)文件
(C)程序块
(D)项目
答题:
A.B.C.D.(已提交)参考答案:A 问题解析: 4.全局变量指的是()的变量。
(A)在项目所有文件可访问
(B)当前文件的所有代码可访问
(C)任何自动初始化为0(D)具有文件作用域
答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
5.当局部变量与全局变量同名时,若要在局部块内访问全局变量,使用()运算符。
(A)::(B):(C).(D)-> 答题:
A.B.C.D.(已提交)参考答案:A 问题解析:
1.有数组定义double d[10];以下叙述不正确的是()。
(A)数组d有10个元素
(B)数组d的最后一个元素是d[10]
(C)数组d的第一个元素*d(D)数组d的字节数是sizeof(double)*10 答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
2.以下对一维数组 a 的定义正确的是()。
(A)int n = 5, a[n];(B)int a(5);
(C)const int N = 5;int a[N];(D)int n;cin>>n;int a[n];答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
3.下列数组定义语句中,不合法的是()。
(A)int a[3] = { 0, 1, 2, 3 };(B)int a[] = { 0, 1, 2 };
(C)int a[3] = { 0, 1, 2 };(D)int a[3] = { 0 };答题:
A.B.C.D.(已提交)参考答案:A 问题解析:
4.已知 int a[10] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }, *p = a;,不能表示数组 a 中元素的式子是()。
(A)*a(B)*p(C)a(D)a[ p-a ] 答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
5.已知 int a[] = { 0,2,4,6,8,10 }, *p = a+1;其值等于0的表达式是()。
(A)*(p++)(B)*(++p)(C)*(p--)(D)*(--p)答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
1.说明一个长度为10的数组,元素类型为整型指针的正确语句是()。
(A)int *pary[10];(B)int(*pary)[10]
(C)int *pary(10);(D)int **pary[10] 答题:
A.B.C.D.(已提交)参考答案:A 问题解析: 2.有以下语句
int a=1, b=2, c=3;int *pary[3]={&a, &b, &c};
能够输出a+b+c 的值的语句是()。
(A)cout
(C)cout
A.B.C.D.(已提交)参考答案:B 问题解析:
1.以下不能对二维数组a进行正确初始化的语句是()。
(A)int a[2][3] = { 0 };
(B)int a[][3] = { { 0,1 }, { 0 } };
(C)int a[2][3] = { { 0, 1 }, { 2, 3 }, { 4, 5 } };
(D)int a[][3] = { 0, 1, 2, 3, 4, 5 };答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
2.已知int a[][3] = { { 0, 1 }, { 2, 3, 4 }, { 5, 6 }, { 7 } };则 a[2][1]的值是()。
(A)0(B)2(C)6(D)7 答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
3.已知int a[3][3] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };,不能表示数组元素a[2][1]的地址是()。
(A)&a[2][1](B)*(a[2]+1)(C)a[2]+1(D)*(a+2)+1 答题:
A.B.C.D.(已提交)参考答案:B 问题解析: 4.有说明语句
int a[5][5];int *p, **q;
以下正确的赋值语句是()。
(A)p=a;(B)p=*a;(C)q=a;(D)q=*a;答题:
A.B.C.D.(已提交)参考答案:B 问题解析: 5.有说明语句
int a[5][5];int *p, **q;
以下正确的赋值语句是()。
(A)p=a[0];(B)p=&a[0];(C)q=a[0];(D)q=&a[0][0];答题:
A.B.C.D.(已提交)参考答案:A 问题解析:
1.若用数组名作为调用函数的实参,则传递给形参的是()。
(A)数组存储首地址
(B)数组的第一个元素值
(C)数组中全部元素的值
(D)数组元素的个数
答题:
A.B.C.D.(已提交)参考答案:A 问题解析:
2.有说明语句
int a[10];
及函数
int fun(int x[10], int n){return sizeof(x);}
则语句
cout
的显示结果是()。
(A)40(B)10(C)4(D)0 答题:
A.B.C.D.(已提交)参考答案:C 问题解析: 3.有说明语句
int a[10];
void fun(int * ,int n);
调用函数的正确语句是()。
(A)fun(a, 10);(B)fun(a[0], 10);(C)fun(*a, 10);答题:
A.B.C.D.(已提交)
D)fun(&a, 10);(参考答案:A 问题解析: 4.有说明语句
int b[4][5];
void fun(int * ,int n);
调用函数的正确语句是()。
(A)fun(b, 20);(B)fun(b[0], 20);(C)fun(b[0][0], 20);(D)fun(&b, 20);答题:
A.B.C.D.(已提交)参考答案:B 问题解析: 5.有说明语句
int x[4][5];
void fun(int y[4][5] , int m, int n);
调用函数的正确语句是()。
(A)fun(x, 4,5);(B)fun(*x, 4,5);(C)fun(x[0], 4,5);(D)fun(&x, 4,5);答题:
A.B.C.D.(已提交)参考答案:AB 问题解析:
1.以下建立动态存储的语句正确的是()。
(A)int p=new int;(B)int p=new(10);
(C)int *p(10);(D)int *p=new int(10);答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
2.以下建立动态存储的语句正确的是()。
(A)int p=new int[];(B)int p=new [10];
(C)int *p=new int[10];(D)int *p[10]=new int;答题:
A.B.C.D.(已提交)参考答案:C 问题解析: 3.有说明语句
int *p=new int[10];
释放动态数组的正确语句是()。
(A)delete []p;(B)delete p[]
(C)delete int[]p(D)delete p int[10] 答题:
A.B.C.D.(已提交)参考答案:A 问题解析: 4.有说明语句
int *p=new int[10];
访问动态数组元素的正确语句是()。
(A)int a=p;(B)int a=*p;
(C)delete int[]p(D)delete p int[10] 答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
1.已知char *a[]={ “fortran”, “ basic”, “pascal”, “java”, “c++” };,则 cout
)。
(A)t(B)一个地址值
(C)java(D)javac++ 答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
2.设有char *s=“ABCDE”;cout
)。
(A)A(B)B(C)ABCD(D)BCD 答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
3.设有char *s=“ABCDE”;cout
)。
(A)A(B)B(C)ABCD(D)BCD 答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
4.设有char *s=“ABCDE”;cout
)。
(A)6(B)5(C)4(D)1 答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
5.设char *s1, *s2;分别指向两个字符串,可以判断字符串s1和s2是否相等的表达式为()。
(A)s1=s2(B)s1==s2
(C)strcpy(s1,s2)==0(D)strcmp(s1,s2)==0 答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
1.语句cout
)。
(A)0, 0(B)0, 1(C)1, 0(D)1, 1 答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
2.语句cout
)。
(A)0, 0(B)1, 1(C)2, 0(D)3, 1 答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
3.语句 cout
)。
(A)24(B)12(C)9(D)6 答题:
A.B.C.D.(已提交)参考答案:A 问题解析:
4.语句 cout>3)
)。
(A)12(B)9(C)6(D)3 答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
5.语句 cout
)。
(A)1(B)3(C)7(D)10 答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
1.实现集合运算A∪B运算的对应表达式是()。
(A)A|B(B)A&B(C)A&(~(A&B))(D)A|B==B 答题:
A.B.C.D.(已提交)参考答案:A 问题解析:
2.实现集合运算A&B运算的对应表达式是()。
(A)A|B(B)A&B(C)A&(~(A&B))(D)A|B==B 答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
3.实现集合运算A-B运算的对应表达式是()。
(A)A|B(B)A&B(C)A&(~(A&B))(D)A|B==B 答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
4.实现集合运算AB运算的对应表达式是()。(A)A|B(B)A&B(C)A&(~(A&B))(D)A|B==B 答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
5.实现集合运算求补集~A运算的对应表达式是()。
(A)~A(B)A==0(C)A&(~(A&B))(D)1
A.B.C.D.(已提交)参考答案:A 问题解析:
6.判断元素x∈A对应的表达式是()。
(A)~A(B)A==0(C)A&(~(A&B))(D)1
A.B.C.D.(已提交)参考答案:D 问题解析:
1.有以下说明语句:
struct point
{ int x;int y;}p;
则正确的赋值语句是()。
(A)point.x = 1;point.y = 2;(B)point={ 1, 2 };
(C)p.x = 1;p.y = 2;(D)p = { 1, 2 };答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
2.已知有职工情况结构变量emp定义为:
struct Date
{ int year;
int month;
int day;
};
strnct Employee
{ char name[20];
long code;
Date birth
};
Employee emp;
下列对emp的birth正确赋值方法是()。
(A)year=1980;month=5;day=1;
(B)birth.year=1980;birth.month=5;birth.day=1;
(C)emp.year=1980;emp.month=5;emp.day=1;
(D)emp.birth.year=1980;emp.birth.month=5;emp.birth.day=1;答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
3.有以下说明语句:
struct Point
{ int x;
int y;
};
则叙述正确的是()。
(A)正确的结构类型说明
(B)正确的结构变量说明
(C)错误的原因是结构中成员类型相同(D)无意义的说明
答题:
A.B.C.D.(已提交)参考答案:A 问题解析:
4.有以下说明语句:
struct Worker
{ int no;
char name[20];
};
Worker w, *p = &w;
则下列错误的引用是()。
(A)w.no(B)p->no(C)(*p).no(D)*p.no 答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
5.s1和s2是两个结构类型变量,若要使赋值s1=s2合法,则它们的说明应该是((A)s1只能接收相同类型的数据成员
(B)结构中的成员相同
(C)同一结构类型的变量
(D)存储字节长度一样的变量
答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
1.有以下说明语句:
struct Student
{ int num。)
double score;
};
Student stu[3]={{1001,80}, {1002,75}, {1003,91}}, *p=stu;
则下面引用形式错误的是()。
(A)p->num(B)(p++).num(C)(p++)->num(D)(*p).num 答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
有说明语句
Struct Node{ int data;Node * next;};
Node *head, *p,*q, *s;
并且,head是单向链表的头指针,p指向链表中的节点,q指向*p的前驱节点。
1.在*p之后插入节点*s的操作是:
(A)p->next=s;s->next=p->next;(B)s->next=p-next;p->next=s;
(C)p =s->next;s =p->next;(D)s =p->next;p =s->next;答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
2.在*p之前插入节点*s的操作是:
(A)q =s->next;s =p->next;(B)q->next=s;s->next=p;
(C)s=p->next;q=s->next;(D)s->next=p;q->next=s;答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
3.在*hear之前插入节点*s的操作是:
(A)s->next=head;head=s;(B)s->next=head->next;head->next=s;
(C)head=s;s->next=head;(D)head->next=s;s->next=head->next;答题:
A.B.C.D.(已提交)参考答案:A 问题解析:
4.删除*p节点的操作是:
(A)q =p;delete p;(B)p = q;delete q;
(C)q->next=p->next;delete p;(D)p->next = q->next;delete q;答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
5.删除*(head->next)的操作是()。
(A)p=head->next;head->next=head->next->next;delete p;
(B)head->next=head->next->next;p=head->next;delete p;
(C)p=head;head=head->next;delete p;
(D)head=head->next;p=head;delete p;答题:
A.B.C.D.(已提交)参考答案:A 问题解析:
1.下列类的定义中正确的是().(A)cla a{int x=0;int y=1;}(B)cla b{int x=0;int y=1;};
(C)cla c{intx;int y;}(D)cla d{intx;int y;};答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
2.若有以下说明,则在类外使用对象objX成员的正确语句是()。
cla X
{ int a;
void fun1();
public:
void fun2();
};
X objX;
(A)objX.a=0;(B)objX.fun1();(C)objX.fun2();(D)X::fun1();答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
3.在类定义的外部,可以被访问的成员有()。
(A)所有类成员
(B)private或protected的类成员
(C)public的类成员
(D)public或private的类成员
答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
4.下列关于类和对象的说法中,正确的是()。
(A)编译器为每个类和类的对象分配内存
(B)类的对象具有成员函数的副本
(C)类的成员函数由类来调用
(D)编译器为每个对象的数据成员分配内存
答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
5.关于this指针的说法正确的是()。
(A)this指针必须显式说明
(B)定义一个类后,this指针就指向该类
(C)成员函数拥有this指针
(D)静态成员函数拥有this指针
答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
1.下面对构造函数的不正确描述是()。
(A)用户定义的构造函数不是必须的(B)构造函数可以重载
(C)构造函数可以有参数,也可以有返回值
(D)构造函数可以设置默认参数
答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
2.下面对析构函数的正确描述是()。
(A)系统在任何情况下都能正确析构对象
(B)用户必须定义类的析构函数
(C)析构函数没有参数,也没有返回值
(D)析构函数可以设置默认参数
答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
3.构造函数是在()时被执行的。
(A)建立源程序文件(B)创建对象(C)创建类(D)程序编译时
答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
4.下列函数原型中,可以作为类Base析构函数的是()。
(A)void~Base(B)~Base()(C)~Base()const(D)Base()答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
5.AB是一个类,那么执行语句“AB a(4), b[3], *p ;”调用了()次构造函数。
(A)2(B)3(C)4(D)5 答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
6.下面关于复制构造函数调用的时机,不正确的是()调用。
(A)访问对象时
(B)对象初始化时
(C)函数具有类类型传值参数时
(D)函数返回类类型值时
答题:
A.B.C.D.(已提交)参考答案:A 问题解析:
7.说明一个类的对象时,系统自动调用()。
(A)成员函数
(B)构造函数
(C)析构函数
(D)友元函数
答题:
A.B.C.D.(已提交)参考答案:B 问题解析:
8.程序中撤销一个类对象时,系统自动调用()。
(A)成员函数
(B)构造函数
(C)析构函数
(D)友元函数
答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
1.在下列选项中,()不是类的成员函数。
(A)构造函数
(B)析构函数
(C)友元函数
(D)复制构造函数
答题:
A.B.C.D.(已提交)参考答案:C 问题解析:
2.下面对友元的错误描述是()。
(A)关键字friend用于声明友元
(B)一个类中的成员函数可以是另一个类的友元
(C)友元函数访问对象的成员不受访问特性影响
(D)友元函数通过this指针访问对象成员
答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
3.已知类A是类B的友元,类B是类C的友元,则下面选项描述正确的是()。
(A)类A一定是类C 的友元
(B)类C一定是类A 的友元
(C)类C 的成员函数可以访问类B 的对象的任何成员
(D)类A 的成员函数可以访问类B 的对象的任何成员
答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
4.下述关于类的静态成员的特性中,描述错误的是()。
(A)说明静态数据成员时前边要加修饰符static
(B)静态数据成员要在类体外定义
(C)引用静态数据成员时,要在静态数据成员前加和作用域运算符
(D)每个对象有自己的静态数据成员副本
答题:
A.B.C.D.(已提交)参考答案:D 问题解析:
5.若有以下说明,则对n的正确访问语句是()。
cla Y
{ //…;
public:
staticint n;
};
int Y::n;
Y objY;
(A)n=1;(B)Y::n=1;(C)objY::n=1;(D)Y->n 答题:
A.B.C.D.(已提交)参考答案:B 问题解析: