C++基础+编程题复习

}

cout<<\ }

81. break语句只能用在循环语句和_switch语句__语句中。

82. Continue语句只能在__循环__语句中。 83. 设有语句: int i=1,s=1;

for( ; s+i<6,i=5 ; i++)

s+=i; 以上for循环语句的循环次数为 _无数次__。 84. 设有循环语句:

for (int i=0,x=0,s=0;i<=9&&x!=55;i++) { cin>>x; s+=x; }

在这个循环语句中,循环体最多执行 ___10__次,最少执行___1__次。

85. 每个基本语句的结束标志是_分号___。 86. 若有int i=10, j=0; 则执行完语句 if(j=0) i++; else i--;

后i的值为___9___。

87. 若有int i=10, j=0; 则执行完语句 if(j==0) i++; else i--;

后i的值为____11___ 。

88. 若有 int i=5, j=10; 则执行完语句 switch(i) { case 4: j++; case 5: i-- ; case 6: j++; case 7: j-=i; default: ; }

后j的值为______7____。

89. 指出下面程序的输出结果___6___。 #include void main() { int x,y;

for(x=1,y=1;y<=10;y++) { if(x>=10) break;

if(x%2==1){ x+=5;continue;} x-=3; }

cout<

90. 指出下面程序的输出结果___6__。 #include void main()

{ int i=1,s=1,n=20; while(s

cout<

91. 指出下面程序的输出结果________ 。#include void main()

{ int i1=1,i2=1,i3,i;

cout<

cout<

} 1 1 2 3 5 8 13 21 34 55

92. 以下程序的执行结果是__d=20___。 #include void main()

{int a=0,b=1,c=0,d=20,x; if(a) d=d-10; else if(!b)

if(!c) x=15; else x=25;

cout<<\ }

93. 以下程序的执行结果是_firsthird__。 #include void main() { int x=1,y=0; switch(x) { case 1:

switch(y)

{ case 0: cout<<\ case 1: cout<<\ }

case 2: cout<<\

} }

94. 执行以下程序,输入-10的结果是_y=0_,输入5的结果是_y=5_,输入10的结果是_y=10_,输入30的结果是__y=5_ 。 #include void main() {int x,c; float y; cin>>x;

if(x<0) c=-1; else c=x/10; switch (c)

{case -1: y=0;break; case 0: y=x;break; case 1: y=10;break; case 2:

case 3: y=-0.5*x+20;break; default:y=-2; }

if(y!=-2) cout<<\ else cout<<\ }

95. 以下程序的执行结果是__#>___。 #include void main()

{int a=2,b=7,c=5; switch(a>0) {case 1:

switch(b<0)

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

switch(c==5)

{case 0: cout<<\ case 1: cout<<\ default: cout<<\ }

default:cout<<\ }

cout<

96. 有四个由用户任意输入的整数a、b、c、d,要求按从大到小的顺序输出,请填入正确的语句。

#include void main() {int a,b,c,d,t;

cin>>a>>b>>c>>d; if(a

if(________ ){t=c;c=d;d=t;} if (a

if (________) {t=b;b=c;c=t;} if(b

cout<

97. 下列程序运行后的输出结果是_s=7__。 #include void main() {int s=0,k;

for (k=7;k>=0;k--) { switch(k) {case 1: case 4:

case 7:s++;break; case 2: case 3:

case 6:break; case 0:

case 5:s+=2;break; } }

cout<<\ }

98. 若用0至9之间不同的三个数构成一个三位数,以下程序将统计出共有多少种方法。请填空。

#include void main()

{ int i,j,k,count=0; for(i=1;i<=9;i++) for(j=0;j<=9;j++)

if (________)continue; else for(k=0;k<=9;k++)

if(________)count++; cout<

} i==j k!=i>>k!=j

99. 以下程序输出1至100之间各位数的乘积大于各位数之和的数,例如对于数字12,有1*2<1+2,故不输出读数,对于27,有2*7>2+7,故输出该数。请填空。 #include void main()

{ int n,k=1,s=0,m;

for(n=1;n<=100;n++) { k=1; s=0; ________ ;

while(________)

{ k*=m;s+=m; ______________ ; }

if(k>s)cout<

} m=n m m/=10

100. 以下程序输出的结果是a=___2___,b=____8__。

#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<<\}

101. 以下程序输出的第一行是___4__,第二行是___1___。

#include void main(void) {int x=6; do{ x-=2;

cout<

102. cin的作用是__输入__,cout的作用是___输出_。cin后面必须跟___变量__。 103.执行cout<<\的输出结果_abc123_。

104. 执行cout<<\的输出结果为__12+2335__。

105. 语句char i='\\45';cout<

106.语句cout<<\的输出结果为_\\\\__。 107.语句cout<<036+014;的输出结果为_42_。

108.语句int x=010;cout<

109. 使用cin和cout进行输入输出操作的程序必须包含头文件_iostream.h_,其语句格式_#include_。

110. 有语句“int a=5,b=7,c=15,d ; d=b>a||(c=a+b);”, 则c的值是__15__。 111. 设有语句 int a=6,b=3; float x=8,y; y=b/a*x/2; 则y的值是_0.0__。

112. C++关系表达式中的关系成立时,则该关系表达式的值为__1_。

113. C++支持面向对象程序设计的四个要素是:封装性、_继承和派生性_、__重载性__和_多样性_。

114. 设有语句int a=258,b; unsigned char c;b=c=a;则b的值是_2___。

115. 设有语句“float x=2.9; int a=5,b;b=a+x;”则变量b的值是_7__ 。 116. 标识符的第一个字符必须是_字母_或_下划线__。

117. 若有 int i=10, j=2; 则执行完i*=j+8; 后i的值为_100_。

118. 在C++中有两种类型的注释符,一种是C语言中使用的注释符(/*?*/),另一种是__//_。

119. C++中标识符的大小写字母是__有__区别的。

120. C++是一种以_编译方式_实现的高级语言。

121. sizeof(int)表示的含义是_一个int型数据类型_。

122. c++提供了两大类数据类型;基本数据类型和_复合/导出数据类型_。基本数据类型有4种:整型(int)、浮点型(float)、字符型(char)和_无值型_。

123. 己知a=13,b=6,写出下列表达式的值.①a/b _2_②a%b _1_③a&&b _1_④!a _0_⑤a‖b __1_

124. 设int a=1,b=2,c,d,e;执行: c=(-a++)+(++b); d=(b--)+(++a)-a;

e=(a/(--b))-(b/(--a)); 语句序列后,变量a、b、c、d、e的结果分别是_2_、_1_、_2_、_3_、_3_。

125. 设int a=2,b=3,c,d,e,f;执行: c=(a++>--b); d=(a==++b); e=(a--!=b);

f=(++a>b--); 语句序列后,变量c、d、e、f的结果分别是 __0_、__1___、__0__、__0_ 。 126. 执行下列语句后,z的值是___7___。 int x=4,y=25,z=2; z=(--y/++x)*z--;

127. 以下程序的执行结果是_0,0,1___。 #include void main() {

int x=5,y=2;

cout<=y)<

128. 以下程序的执行结果是_42,54,54___。 #include void main() {

int x,y,z; x=y=z=3; y=x++-1;

cout<

cout<

cout<

129. 以下程序的执行结果是__6,5,6_____。 #include void main()

{ int x=1,y=2,z=3; x+=y+=z;

cout<<(x

cout<<(x

10VC复习一 总分:36分 -1.单项选择题

1. 实型变量x的取值范围为闭区间[–2,10]或开区间(15,34),则正确表示x取值范围的逻辑表达式是__b___

A. –2<=x<=10||15

C. –2<=x<=10&&15

2. 设有定义int a;float f;double i;则表达式10+'a'+i*f值的数据类型是____c____。 A. int B. float C. double D. 不确定 3. 在C++语言中,char型数据在内存中的存储形式是___a_____

A. ASCII码 B. 补码 C. 反码 D. 原码

4. 设n=10,i=4,则赋值运算n%=i+l执行后,n的值是____a____。

A. 0 B. 3 C. 2 D. 1 5.设int m=l,n=2;则m++==n的结果是__a_。 A. 0 B. 1 C. 2 D. 3 6.设int m=l,n=2;则++m==n的结果是_b__。 A. 0 B. 1 C. 2 D. 3

7. 系统约定C++源程序文件名的缺省的扩展名为___a___。

A. cpp B. c++ C. bcc D. vcc 8. 下面四个选项中,均不能作为用户标识符使用的是____d____

A. m,P—0, do B. float, ka0, –A C. –123,temp,INT D. b–a,goto,int 9. 设有说明―int a=15,b=17,c;‖,执行表达式―c=a||(b+=b)‖后,则a、b、c的值分别是 a A. 15、17、1 B. 1、34、35 C. 15、34、1 D. 15、17、15

10. 采用函数重载的目的在于____d____。 A. 实现共享 B. 减少空间 C. 提高速度 D. 使用方便,提高可读性

11. 以下程序的正确运行结果是_____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 12. 设有宏定义和语句: #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 13. 设有语句―for(int i=5,sum=0;++sum,i<5;i++)sum+=i;‖,则for()语句的执行情况是____a____。

A. 循环0次 B. 循环4次 C. 循环5次 D. 循环6次

14. 当一个函数无返回值时,函数的类型应定义为____a____。

A. Void B. 任意 C. int D. 无 15. 在int b[][3]={{1},{3,2},{4,5,6},{0}};中b[2][2]值是____c____ A. 0 B. 5 C. 6 D. 2 16. 设有以下语句序列: int x; cin>>x;

float z,y[x]={1,2,3,4,5,6,7,8}; // A z=y[3]; //B

则以下说法中正确的是____d____。

A. z的值为4 B. z的值为3 C. B行语句错 D. A行语句错

17. 对于以下递归函数f,调用f(4),其返回值为_______d_____。 int f(int n) {

if(n) return f(n-1)+n ; else return n; }

A. 10 B. 4 C. 0 D. 以上均不是 18. C++中,关于参数默认值的描述正确的是________b_______。

A. 只能在函数定义时设置参数默认值 B. 设置参数默认值时,应当从右向左设置 C. 设置参数默认值时,应当全部设置 D. 设置参数默认值后,调用函数不能再对参数赋值

19. break语句只能用在____d___

A. 开关语句中 B. 函数体中允许语句出现的任一位置 C. 循环语句中 D. 开关语句或循环语句中 20. 若定义: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<<\ }

-2.填空题 1. 有程序如下,运行后输出的是___16____。 #include void main(void) { int a[4][4]={{1,2,0,-1},{3,-2,-3,0},{4,0,-5,5},{-6,6,0,7}};

for(int i=0,s=0;i<4;i++) for(int j=0;j<4;j++) { if(a[i][j]<0)continue; if(a[i][j]==0)break; s+=a[i][j]; }

cout<

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4