c++复习资料.docx

上传人:b****3 文档编号:2973634 上传时间:2022-11-16 格式:DOCX 页数:22 大小:28.16KB
下载 相关 举报
c++复习资料.docx_第1页
第1页 / 共22页
c++复习资料.docx_第2页
第2页 / 共22页
c++复习资料.docx_第3页
第3页 / 共22页
c++复习资料.docx_第4页
第4页 / 共22页
c++复习资料.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

c++复习资料.docx

《c++复习资料.docx》由会员分享,可在线阅读,更多相关《c++复习资料.docx(22页珍藏版)》请在冰豆网上搜索。

c++复习资料.docx

c++复习资料

第一、二章基础知识

1下列不正确的转义字符是C

A. ’\’’ 

B. ’\\’ 

C. ’\81’ 

D. ’\0’ 

2以下运算符中优先级最低的是B

A. 逻辑运算符 

B. 赋值运算符 

C. 算术运算符 

D. 关系运算符 

3如果 a=1,b=2,c=3,d=4, 则条件表达式 a

a:

c

c:

d 的值为D

A. 4 

B. 2 

C. 3 

D. 1 

4为表示关系x大于等于y,y大于等于z,正确的C++语言表达式A  

A. x>=y&&y>=z 

B. (x>=y)AND(y>=z) C. x>=y>=z 

D. (x>=y)&(y>=z) 

5下列ASCII码值最小的字符是A

A. ‘\n’ 

B. ‘b’ 

C. ‘A’ 

D. ‘6’ 

6若执行语句:

intb,a=12,n=5;表达式a%=(b=2,n%=b)+4结果是A

A. 2 

B. 4 

C. 1 

D. 16 

7设m,n,a,b,c,d均为0,执行(m=a==b)||(n=c==d)后,m、n的值是 B

A. 0,0 

B. 1,0 

C. 0,1 

D. 1,1 

8设有语句inta=3;则执行了语句a+=a-=a*a;后,变量a 的值是  C

A. 0 

B. 9 

C. -12 

D. 3 

9下列变量定义及初始化中,错误D

A. inta=0xFF 

B. longa=2L 

C. chara=’\72’ 

D. doublea=1.2e0.5 

10逗号表达式(a=4*5,a*2),a+15的值C

A. 20 

B. 40 

C. 35 

D. 55 

11哪一个不是面向对象方法特征B

A. 封装性 

B. 开放性 

C. 继承性 

D. 多态性 

12设 charch; 错误的赋值语句C

A. ch=68; 

B. ch='\xef'; 

C. ch="\\"; 

D. ch='\123'; 

13设intx=-1;执行表达式++x||++x||++x后,x的值是D

A. 2 

B. 0 

C. 3 

D. 1 

14C++源程序文件扩展名的 B

A. obj 

B. cpp 

C. exe 

D. c 

15假设下面所有的变量均已定义为double型,下列赋值表达式不正确的是   C

A. z*=2.8/4

B. x=y=z

C. x=3.5%2 

D. x=--x

A是复合赋值运算符,先计算右边的除法,当两个数据的类型不同的时候,先将4转化为4.0再进行运算得结果0.7,再执行z=z*0.7的赋值运算,正确;B先对右边的部分进行运算,变量x先执行自减,将表达式的结果赋值给x,实际上直接写成--x能达到同样的效果,这种用法不常见,但是语法上是正确的;C是连续赋值,按从右到左的顺序执行,最终效果是x、y和z三个变量的值相等,也是正确的;D的错误在赋值号右边,运算符“%”要求两个运算对象都必须为整数,3.5不是整数。

16在 C++语言中int,long,unsigned 和 char这四种类型数据的转换规律是C

a. char->int->long->unsigned 

b. char->unsigned->long->int 

c. char->int->unsigned->long 

d. int->unsigned->long->char 

17以下选项中可作为C++语言合法整数A

A. 0Xafb 

B. 11010B 

C. x2b2 

D. 0583 

18在C++语言中,设shortint型占两个字节,下列不正确的shortint型常数A

A. 32768 

B. 0xfa 

C. 032770 

D. -32768 

19关系运算符对两侧的运算对象的要求B

A. 只能是0或1 

B. 可以是任意合法的表达式,两者类型不一定相同 

C. 两个运算对象必须属于同一种数据类型 

D. 只能是0或非0值 

20下列哪一个是合法的实型字面常量 C

A. 8E3.1 

B. E5 

C. 234 

D. 234. 

复杂数据及运算

1下列程序段运行后,i的正确结果为C

inti=0;char*s=“a\041#041\\b”;while(*s++)i++;

A. 12 

B. 5 

C. 8 

D. 11 

2以下一维数组 a 的正确定义是 D

A. intn;cin>>n;inta[n]; 

B. intn=10,a[n]; 

C. inta(10); 

D. #defineSIZE10inta[SIZE]; 

3下面判断字符串str1是否大于str2,正确的表达式是 C

A. if(str1>str2) 

B. if(strcmp(str1,str2)) C. if(strcmp(str1,str2)>0) 

D. if(strcmp(str2,str1)>0) 

4设变量定义为“intx,*p=&x;”,则&*p相当于__。

D

A. x 

B. *p 

C. *&x 

D. &x 

5设int*ptr,x,array[5]={5,2,4,3,1}; ptr=array; 能使x的值为2的语句A

A. x=*(array+1); 

B. array++;x=*array; 

C. x=*(ptr+2); 

D. x=array[2]; 

6下列正确的一维数组初始化是   C

A. inta[2]={1,2,3,4,5}; 

B. inta[5]={,,1,2}; 

C. inta[5]={1,2}; 

D. int*a={1,2,3,4,5}; 

7以下程序给数组所有元素输入数据,填入__能完成该功能。

C

#include

usingnamespacestd; 

intmain( ) 

{

 intarray[5],i=0;

 while(i<5)

  cin>>__;

 return0;

}

A. &array[i+1] 

B. &array[++i] 

C. array+(i++) 

D. array+i 

8strlen(”a\012b\xab\\bcd\n”)的值A

A. 9 

B. 10 

C. 11 

D. 13 

9设charstr[100];inti=5;则下列哪一个能正确表示数组的某一个元素   C

A. *((str++)+i) 

B. (str+i) 

C. *(str+i-1) 

D. str[i+95]

10设 int*p,i; 以下正确的语句B

A. i=p; 

B. p=&i; 

C. i=*p; 

D. *p=10; 

11设intx[]={1,2,3,4,5,6},*p=x; 则值为3的表达式是 B

A. p+=2;*++p; 

B. p+=2;*p++ 

C. p+=2;++*p; 

D. p+=3;*p; 

12若有语句 int*point,i=4;和 point=&i; 下面均代表地址的一组选项是 B

A. &*i,&i,*point 

B. &a,&*point,point 

C. *&point,*point,&i 

D. i,point,*&i 

13若有说明:

inta[]={15,12,-9,28,5,3},*p=a,则下列哪一种表达错误A

A. *(a=a+3) 

B. *(p=p+3) 

C. *(a+*(a+5)) 

D. p[p[4]] 

14若定义intm[10]={9,4,12,8,2,10,7,5,1,3};则m[m[4]+m[8]]的值是D

A. 7 

B. 12 

C. 10 

D. 8 

15以下二维数组a的正确说明是 A

A. doublea[2][4] 

B. floata(3)(4) 

C. inta[3][] 

D. floata(3,4) 

16假设已定义chara[10]; char*p;下面的赋值语句中,正确的是 A

A. p=a; 

B. *p=”abcdef”; 

C. a=”abcdef”; 

D. p=*a; 

17下列对指针p的操作,正确的B    

A. inta[5]={1,2,3,4,5},*p=&a;*p=5; 

B. inta,*p=&a; C. int*p;*p=2; 

D. floata[5];int*p=a; 18若有以下定义和语句,错误C

inta=4,b=3,*p,*q,*w;

p=&a;q=&b;w=q;q=NULL;

A. *p=b; 

B. *p=*w; 

C. *q=0; 

D. w=p; 

19设int *p,x,a[5]={1,2,3,4,5}; p=a;能使x的值为2的语句是  B

A. x=a[2]; 

B. x=*(a+1); 

C. x=*(p+2); 

D. a++;x=*a; 

20若有说明:

int*p1,*p2,m=5,n; 以下均是正确赋值语句的选项是 A

A. p1=&m;p2=p1; 

B. p1=&m;p2=&p1; 

C. p1=&m;*p1=*p2; 

D. p1=&m;*p2=*p1; 

21设 int s[10];*p=s; 错误A

A. s=p+s; 

B. p=s+5; 

C. s[2]=p[4]; 

D. *p=s[0]; 

22执行下面的程序段后,ab的值B

int*var,ab;

ab=100; var=&ab; *var+=10;ab+=10;

A. 0 

B. 120 

C. 110 

D. 100 

23以下对二维数组a进行正确初始化  A

A. intarray[][3]={1*6}; B. intarray[2][3]={{1,2},{3,4},{5,6}}; 

C. intarray[2][3]={{},

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 水产渔业

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1