自学内容网 自学内容网

初学C++30道选择题带答案

题目

1. C++源程序文件经过编译后,产生的目标文件的扩展名为   

A).cpp        B).obj       C).dll      D) .exe

2.    不是C++语言的基本数据类型。

A)double   B)unsigned     C)bool      D) int *

3. 下列表达式的值为false的是     。

A)5>4>2   B)1<3&&5<7    C)!(2>4)     D) -1||0

4. 若有语句int x=2; cout<<(x<<2)<<”,”<<x;,则输出为    。

A)8,4   B)2,8    C)8,2    D) 4,8

5. 执行语句int a=1,b=2;  a++>=b&&b++; 之后,变量a和b的值分别为      。

 A)2,2    B)1,2     C)2,3     D) 1,3

6. 若有int data[3][10];,则表达式sizeof(data)/sizeof(int[10])    。

A)非法    B)值为30     C)值为10     D)值为3

7. 以下叙述,错误的是     。

A)数组名就是指向该数组中第一个数组元素的指针

B)指针数组中的每个元素都是指针

C)两个同类型的指针变量可以做加法运算

D)可以声明一个指针变量的引用

8. 若有定义int a[3][5];,a[0][0]为二维数组存储空间的第一个元素,则元素a[i][j](0≤i≤2,0≤j≤4)为存储空间中的第    个元素。

A)i*5+j+1    B)i*5+j     C)(i-1)*5+(j-1)   D)(i+1)*5+(j+1)

9. 下列对字符数组进行初始化的语句正确的是    。

A)char a[][]={‘H’,’e’,’l’,’l’,’o’}         B)char a[5]=”hello”  

C)char a[2][5]={“hello”,”world”}        D)char a[]=”hello”

10. 若有语句int a[]={1,2,3,4,5},*p=a+4; cout<<p[-1]; ,则输出值为    。

A)3      B)4     C)不确定       D)非法

  1. 下面程序的输出是______。

A) 2           B) 4          C) 6            D) 8

#include <iostream>

using namespace std;

int main()

{    int a[8]={0,2,4,6,8,10},*p=a;

cout<<*(p+2);}

12. 下面程序的输出是______。

A) 10  6  2     B)11  7  3       C)12  8  4       D) 11  7  3  12  8  4

#include <iostream>

using namespace std;

int main()

{   int y=12;

for(;y>0;y--)

if(y%4==0)

cout<<--y<<" ";}

13. 以下    不是字符常量。

A)"a"    B)'\x61'    C)'\n'     D)'#'

14. 下列逻辑表达式的值为“真”的是       。

A)0&&1   B)-1&&1   C)!(2>1)     D)5<4||0

15. 执行语句int a=1,b=2;  ++a>b++&&--b; 之后,变量a和b的值分别为     。

 A)1,2    B)2,1     C)2,2     D) 2,3

16. 若有定义int *p[3];,则下列说法正确的是     。

A)p是一个指向长度为3的一维数组的指针

B)p是一个长度为3的一维指针数组

C)p是一个指向数组元素p[1]的指针

D)以上说法都不对

17. 若有定义int a[3][5];,以下叙述,错误的是     。

A)a[0]+1指向数组元素a[0][1]

B)a+1指向a[1]

C)*(a+2) 值与表达式a [2][0]的值相同

D)表达式*( *(a+1)+2 )值与表达式a[1][2]的值相同表达式 

18. 程序段char str[]="abcde";      cout<<str+2<<endl; 的输出结果为  

A)abcde      B)bcde     C)cde   D)abcd

19. 下列各种初始化语句,错误的是     。

A)char str[]={"abcde"};         B)int k(10);

C)int a[][5]={1,2,3,4,5,6};       D)char a[5]=”hello”

20. 若有int a=3,b=2,c=1,d=4;,则表达式 a>b?c:b>c?a:d值为     。

A)1      B)2       C)3       D)4

21.以下选项中正确的语句组是( )

A)char s[];s=”BOOK!”;                   B) char *s;s={”BOOK!”};  

C)char s[10];s=”BOOK!”;                 D) char *s;s=”BOOK!”;

22.以下叙述中正确的是( )。

A)C++程序的基本组成单位是语句     B)C++程序中的每一行只能写一条语句

C)简单C++语句必须以分号结束       D)C++语句必须在一行内写完

23.以下选项中不能作为C++ 语言合法常量的是( )。

     A)'cd'   B)0.1e+6    C)"\a"     D)'\011'

24.程序段       char str[]="abcde";  cout<<str+2<<endl; 的输出结果为( )。

A)abcde      B)bcde     C)cde   D)abcd

25.执行以下程序段后,w 的值为( )。 int w='A', x=14, y=15; w=((x || y)&&(w<'a'));

   A)-1     B)NULL     C)l      D)0

26.若有定义语句:double x[5]={1.0,2.0,3.0,4.0,5.0}, *p=x;则错误引用x 数组元素的是( )。

       A)*p    B)x[5]          C)*(p+1)     D)*x

27.设变量已正确定义并赋值,以下正确的表达式是( )

A)x=y*5=x+z        B)int(15.8%5)         C)x=y+z+5,++y         D)x=25%5.0 

28.当变量c的取值不为2、4、6时,下列表达式值仍为“真”的是( )

A)(c==2)‖(c==4)‖(c==6)                B)(c>=2&&c<=6)‖(c!=3)‖(c!=5)   

C)(c>=2&&c<=6)&&!(c%2)         D)(c>=2&&c<=6)&&(c%2!=1) 

29.以下不会构成无限循环的语句或者语句组是( )

A)n=0;  do{++n;}while(n<=0);

B)n=0;  while(1){n++;} 

C)n=10;  while(n);     {n--;}

D)for(n=0,i=1; ;i++) n+=i; 

30.以下不能对二维数组a进行正确初始化的语句是( )

A)int a[3][4]={0};                                B)int a[][4]={{1},{2},{3}};

C)int a[3][]={{1},{2,3,4},{5}};           D)int a[3][4]={1,2,3,4,5};

答案

1B 2D 3A 4C 5A 6D 7C 8A 9D 10B

11B 12B 13A14B15D 16B 17C 18C 19D 20A

(21)  D    (22)   C    (23)   A     (24)   C    (25)   C   (26) B    (27) C    (28)B     (29)A    (30)   C  


原文地址:https://blog.csdn.net/workflower/article/details/140651394

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!