初学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)非法
- 下面程序的输出是______。
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};
答案
(1)B (2)D (3)A (4)C (5)A (6)D (7)C (8)A (9)D (10)B
(11)B (12)B (13)A(14)B(15)D (16)B (17)C (18)C (19)D (20)A
(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)!