C++基础+编程题复习

发布时间 : 星期一 文章C++基础+编程题复习更新完毕开始阅读

1. 在一个被调用函数中,关于return语句使用的描述,错误的是___d___。

A. 被调用函数中可以不用return语句 B. 被调用函数中可以使用多个return语句 C. 被调用函数中,如果有返回值,就一定要有return语句

D. 被调用函数中,一个return语句可返回多个值给调用函数

2. 以下程序输出的结果是a=___a___,b=_______ #include void main(void)

{ for(int a=1,b=1; a<=5; a++) { if (b>=8) break;

if(b%2==1){b+=7; continue;} b-=3; }

cout<<\

} A. 2 8 B. 1 7 C. 8 2 D. 7 1

3. 在C++语言程序中,有关函数的定义正确的是_____b___。

A. 函数的定义可以嵌套,但函数的调用不可以嵌套

B. 函数的定义不可以嵌套,但函数的调用可以嵌套

C.函数的定义和函数的调用均不可以嵌套 D. 函数的定义和函数的调用均可以嵌套 4. 在循环语句的循环体中使用break语句的作用是___b___。

A. 结束本次循环 B. 结束该层的循环 C. 结束开关语句 D. 结束程序执行 5. 下面程序段的运行结果是____a____。 #include void main() {int I;

for(I=1;I<=5;I++) { if(I%2) cout<<―*‖; else continue; cout<<―#‖; } cout<<―$\\n‖; }

A. *#*#*#$ B. #*#*#*$ C. *#*#$ D. #*#*$

6. 以下程序的正确运行结果是___d___。 #include int f(int); void main() { int a=2,i;

for(i=0; i<3; i++) cout<

int f(int a) { int b=0; static int c=3; b++; c++; return(a+b+c);

} A. 7 7 7 B. 7 10 13 C. 7 9 11 D. 7 8 9 7. 设有宏定义和语句: #define P(x,y) x/y #define PP(a,b) a*b

int c=P(2+3,2+3)+PP(2+3,2+3); 则变量c的值是____b___ 。

A. 26 B. 17 C. 17.5 D. 31 8.有关函数重载的正确说法是__b___。 A. 函数名不同,但参数的个数和类型相同 B. 函数名相同,但参数的个数不同或参数的类型不同

C. 函数名相同,参数的个数和类型也相同 D. 函数名相同,函数的返回值不同,而与函数的参数和类型无关

9. 选择出合法的if语句(设有int x,y;),正确输出x与y的大小关系___b____。 A. if(x!=y)

if(x>y) cout<<\; else cout<<\ B. if(x!=y)

if(x>y) cout<<\ else cout<<\else cout<<\ C. if(x!=y)

if(x>y) cout<<\else cout<<\cout<<\ D. if(x!=y);

if(x>y)cout<<\ else cout<<\ else cout<<\

10. 下列DO-While循环的次数为_d_____. int i=5; Do

{ cout<

}while(i!=0);

A. 0 B. 1 C. 5 D. 无限 11. 已知函数f的原型为:void f(int &a,char *b);变量s,t的定义是:int s;char t[]=\把s和t分别作为第一参数和第二参数来调用函数f,正确的调用语句是:____c____。 A. f(&s,&t); B. f(&s,t); C. f(s,t); D. f(s,&t);

12. 下列___a____是语句.

A. ; B. a=17 C. x+y D. cout<<‖\\n‖ 13. 若定义:float x;int a,b;则正确的switch语句是___d____。 A. switch(x)

{ case 1.0:cout<<\ case 2.0:cout<<\ }

B. switch(x)

{ case 1.2:cout<<\ case 3 : cout<<\ }

C. switch(a+b)

{ case 1 : cout<<\ case 1,2:cout<<\ }

D. switch(a+b)

{ case 1:cout<<\\n\ case 2:cout<<\ }

14. 以下正确的说法是______d____。 A. 用户若需要调用标准函数,调用前必须重新定义

B. 用户可以直接调用所有标准库函数 C. 用户可以定义和标准库函数重名的函数,但是在使用时调用的是系统库函数 D. 用户可以通过文件包含命令将系统库函数包含到用户源文件中,然后调用系统库函数

15. 采用函数重载的目的在于___d____。 A. 实现共享B. 减少空间C. 提高速度D. 使用方便,提高可读性 16. int x=-1; do

{x=x*x;} while(!x);

下列说法正确的是_____c____。

A. 是死循环 B. 循环执行两次 C. 循环执行一次 D. 有语法错误

17. 以下四组函数原型说明中,满足C++函数重载规则的是____c_____。

A. float f(float x); void f(float y); B. float f(float x); void f2(float x,float y);

C. float f(float x,int y); void f(float y);D. float f(float y); float f(float y);

18. 下面的程序输出的结果是___b____。 #include void LE(int &a,int b) {

int x=a; a=b; b=x;

cout <

void main() {

int x=10,y=25;

LE(x,y); cout <

A. 25 10 25 10 B. 25 10 25 25 C. 25 10 10 25 D. 10 25 10 25

19. 以下函数声明中,存在着语法错误的是___d___。

A. int AA(int a,int); B. int *BB(int,int); C. void CC(int,int=5); D. void *DD(x, y); 20. int a=1,b=2,c=2;

while(a

运行结果为______a___。

A. 1,2,0 B. 2,1,0 C. 1,2,1 D. 2,1,1 21. 若有执行语句char str[7];cin>>str;当输入为:ObjectWindowsPrograrmming!所得的结果是str=____b___

A. Object Windows Programming! B. Object C. Object Windows

D. Object Windows Programming

22. 控制格式I/O的操作中,__d____是设置域宽的。

A. ws B. oct C. setfill() D. setw()

23. 函数的功能是交换x和y中的值,且通过正确调用返回交换结果。不能正确执行此功能的函数是_____b_____。 A. void funa(int *x, int *y) {

int i, *p=&i;

*p=*x; *x=*y; *y=*p; }

void main() { int x=3,y=5; funa(&x,&y);

cout<

B. void funa(int x, int y) { int t;

t=x; x=y; y=t; }

void main() { int x=3,y=5; funa(x,y);

cout<

C. void funa( int *x, int *y) { int p;

p=*x; *x=*y; *y=p; }

void main() { int x=3,y=5; funa(&x,&y);

cout<

D. void funa (int *x, int *y) {

*x=*x+*y; *y=*x-*y; *x=*x-*y; }

void main() { int x=3,y=5; funa(&x,&y); cout<

24. 在每个C++程序中都必须包含有这样一个函数,该函数的函数名为_____a___。 A. main B. MAIN C. name D. function 25. int x=0,y=0;

while(x<15) y++,x+=++y; cout<

则运行结果为____d____。

A. 20,7 B. 6,12 C. 20,8 D. 8,20 26. 能把函数处理结果的两个数据返回给主调函数,在下面的方法中不正确的是_______a____。

A. return这两个数 B. 形参用两个元素的数组 C. 形参用两个这种数据类型的指针D. 用两个全局变量

27. sizeof(double)是一个__a_____表达式。 A. 整型 B. 双精度 C. 不合法 D. 函数调用

28. 与以下程序段等价的是___a___。 while(a)

{ if(b) continue; c; }

A. while(a) {if(!b)c;} B. while(c) {if(!b) break; c; }

C. while(c) {if(b) c;} D. while(a) {if(b) break; c;

}

29. 要求函数的功能是在一维数组a中查找x值;若找到则返回所在的下标值,否则返回0;数放在a[1]到a[n]中。不能正确执行此功能的函数是_____c_____。 A. funa(int *a, int n, int x) { *a=x;

while(a[n]!=x) n--; return(n); }

B. funb(int *a, int n, int x) { int k;

for(k=1;k<=n; k++) if(a[k]==x)return(k); return(0); }

C. func(int a[ ], int n, int x) {

int *k;

a[0]=x; k=a+n; while(*k!=x) k-- return(k-n); }

D. fund(int a[ ], int n, int x) {

int k=0; do k++;

while((k

30. 预处理命令在程序中都是以_b_开头的。 A. * B. # C. : D. /

31.有一函数的定义如:void fun(char*s){?}则不正确的函数调用是_d_。 A. void main( ) {

char s[20] =\fun(s); ? } B. void main( ) {

char a[20] =\fun(&a[0]); ? }

C. void main( ) {

char s[20] =\char *p=s; fun(p); ? }

D. void main( ) {

char s[20] =\fun(s[ ]); ? }

32. 对数组名作函数的参数,下面描述正确的是_______b______。 A. 数组名作函数的参数,调用时将实参数组复制给形参数组。

B. 数组名作函数的参数,主调函数和被调函数共用一段存储单元。

C. 数组名作参数时,形参定义的数组长度不能省略。

D. 数组名作参数,不能改变主调函数中的数据。

33. 预处理命令以(b)开头。 A. * B. # C. / D. :

34. 设有函数定义“int f1(void){return 200,100;}”,设调用函数f1()时,___a____。 A. 函数返回值100 B. 函数返回两个值100和200 C. 函数返回值200

D. 语句“return 200,100;”语法错,不能调用函数

35. 使用如setw()的操作对数据进行格式输出时,应包含____c___文件

A. iostream.h B. fstream.h C. iomanip.h D. stdlib.h

36. 在C++语言中,080是_____d_____。 A. 八进制数 B. 十进制数 C. 十六进制数 D. 非法数

37. C++语言中while和do-while循环的主

联系合同范文客服:xxxxx#qq.com(#替换为@)