C++常见选择填空习题集(2)

2019-05-24 13:13

D. 显式类型转换可以在任何类型之间转换

30. 设int n=10,i=4;,则表达式n%=i+1运算后n的值是( ) A. 0 B. 3 C. 2 D. 1

31. 下列运算符中,可以作用于浮点数的是( ) A. ++ B. % C. >> D. &

32. 下列各运算符中,不可以作用于浮点数的是( ) A. / B. && C. || D. ~

33. 下列运算符中,可以作用于浮点数的是( ) A. ++ B. % C. >> D. ^

34. 下列运算符中,结合性从左到右的是( )

A. ?: B. *= C. == D. ++

35. 若有下面的定义,则表达式:a

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

36. 设x为int型变量,则执行下列语句后,x的值为( ) x=10;

x+=x-=x-x;

A. 10 B. 20 C. 30 D. 40

37. 若有下面的定义,则对语句c=a+b;的下列说法中正确的是( ) int a=12;

float b=1.2f, c;

A. 变量a转换为float类型

B. 变量b转换为int类型,运算结果再转换为float类型

C. 变量a和b都转换为一中间类型,运算结果再转换为float类型 D. 以上都不对

38. 执行下列语句后,a的值是( )

int a = 8; a += a -= a*a;

A. -240 B. 64 C. 112 D. -112

39. 能正确表示“大于10且小于20的数”的C++表达式是( )

A. 1010||x<20 C. x>10&x<20 D. !(x<=10||x>=20)

40. 表示关系x≤y≤Z的C++语言表达式为( ) A. (x<=y)&&(y<=Z) B. (x<=y)AND(y<=Z) C. (x<=y<=Z) D. (x<=y)&(y<=Z)

41. 设x, y, z均为int型变量,则执行以下语句后,t的值为( ) x=y=z=1;

t=++x||++y&&++z;

A. 0 B. 1 C. 2 D. 不定值

42. 若有如下语句: int a,b,c; a=b=c=5; 则执行语句: b+=++a&&++c>b;

后a、b、c的值分别为( )

A. 6,7,6 B. 6,6,6 C. 6,6,5 D. 6,1,6

43. 在C++中,const修饰符主要用于代替C语言中的( )关键字进行常量定义。 A. #include B. static C. #define D. #ifdef

二、填空题

1. 在32位计算机中,若有double *p;,则p占用 4字节的内存空间。 2. 在C++中,用同一个数据类型定义多个变量时需要用逗号分隔。

3. 变量的三要素分别是(变量的)类型、(变量的)名字(或变量名)、(变量的)值。 4. 表达式(-9)%4的值为-1 ,表达式9%(-4)的值为1 ,表达式(-9)%(-4)的值为-1 5. 在C++中,’\\0’ 被用来作为字符串的结束符。 6. 空字符串的长度为1。

7. 在C++中,变量必须遵循先定义后使用的原则。 8. 在16位计算机中,int数据类型占用2个字节。

9. 数据类型转换分为自动类型转换(隐含类型转换)和强制类型转换(显式类型转换)两种。 10. 在32位机器中,若有:int a[10];则表达式sizeof(a)/sizeof(int)的值为10。 11. 在32位机器中,若有:int a[10];则表达式sizeof(a)的值为40。 12. 变量的类型既规定了占用内存字节数(大小) ,也规定了合法操作。 13. 没有初始化的变量其存储的值要么是默认值,要么是 机器(计算机)决定。

15. 条件表达式的类型由:号前后两个子表达式的高类型决定。 16.赋值表达式的类型由赋值运算符的左值的类型决定。 17. 逻辑运算符&&和||的特点是在计算时存在短路现象。 18. 若有定义: int a(4), b(2);

则表达式 a&&b||a++||(a-b*2) 运算完成后a的值为4 。

19. 设int型变量x的值为10,则表达式x>10?x+100:x-100的值是-90。

三、写程序运行结果

1. #include using namespace std; int main() {

float x; int i; x=12.6; i=(int)x;

cout<<\cout<<\}

x=12.6 y=12

2. #include using namespace std; int main() {

int i; char c1; i='A'; c1='A';

cout<

3. #include using namespace std; int main() {

cout<<\cout<<\}

abc\\\abc\\\\abc

4. #include using namespace std;

int main() {

int i=1;

cout<<\cout<<\} i=2 i=2

5. #include void main() {

int a;

a=7*2+-3%5-4/3; double b;

b=510+3.2-5.4/0.03; cout<

cout<

10 333.2 0 4t3

6. #include void main() {

int x,y,z; x=y=z=1;

--x && ++y && ++z;

cout<

cout<

cout<

0 1 1 1 2 2 2 1 2

7. #include

void main() {

char x('m'),y('n'); int n; n=x

cout<

cout<

n=('y'!='Y')+(5>3)+(y-x==1); cout<

四、改错题

1. 下面程序要求输出x和y的值,x的值为10,y的值为11。

#include using namespace std; void main() { const int x; int y=10; y=x++; cout<

第三章语句

一、选择题

1. 关于switch语句的描述中,正确的是( )

A. switch语句中default子句可以没有,也可有一个 B. switch语句中每个case语句序列中必须有break语句 C. switch语句中default子句只能放在最后

D. switch语句中case子句后面的表达式只能是整型表达式

2. 下列关于goto语句的描述中正确的是( ) A. goto语句可以在一个文件中随意转向 B. goto语句后面要跟上一个它所转向的语句


C++常见选择填空习题集(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: