广州电大 期末c++综合复习答案Word格式文档下载.docx

上传人:b****7 文档编号:22942675 上传时间:2023-02-06 格式:DOCX 页数:33 大小:31.28KB
下载 相关 举报
广州电大 期末c++综合复习答案Word格式文档下载.docx_第1页
第1页 / 共33页
广州电大 期末c++综合复习答案Word格式文档下载.docx_第2页
第2页 / 共33页
广州电大 期末c++综合复习答案Word格式文档下载.docx_第3页
第3页 / 共33页
广州电大 期末c++综合复习答案Word格式文档下载.docx_第4页
第4页 / 共33页
广州电大 期末c++综合复习答案Word格式文档下载.docx_第5页
第5页 / 共33页
点击查看更多>>
下载资源
资源描述

广州电大 期末c++综合复习答案Word格式文档下载.docx

《广州电大 期末c++综合复习答案Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《广州电大 期末c++综合复习答案Word格式文档下载.docx(33页珍藏版)》请在冰豆网上搜索。

广州电大 期末c++综合复习答案Word格式文档下载.docx

C

  3.设有语句“inta=12;

a+=a*a;

”,则执行结束后,a的值为(  )。

  A.12   B.144   C.156   D.288

  4.x>

0&

x<

=10的相反表达式为(  )。

  A.x<

=0||x>

10    B.x<

=0&

x>

10

  C.x<

=0||x<

=10   D.x>

  5.x>

0||y==5的相反表达式为(  )。

B

=0||y!

=5    B.x<

y!

=5

  C.x>

0||y!

=5    D.x>

y==5

  6.字符串“a+b=12\n”的长度为(  )。

  A.6   B.7   C.8   D.9

  7.在下列的常值常量定义中,错误的定义语句是(  )。

  A.constM=10;

     B.constintM=20;

  C.constcharch;

   D.constboolmark=true;

  8.枚举类型中的每个枚举常量的值都是一个(  )。

  A.整数          B.浮点数

  C.字符          D.逻辑值

  9.含随机函数的表达式rand()%20的值在(  )区间内。

  A.1~19        B.1~20

  C.0~19        D.0~20

  四、第二章填空题

  1.十进制数25表示成符合C++语言规则的八进制数为________。

031

  2.十进制数25表示成符合C++语言规则的十六进制数为________。

0x19

  3.在c++语言中,操纵符________表示输出一个换行符。

endl

  4.执行“cout<

<

char('

A'

+2)<

endl;

”语句后得到的输出结果为________。

  5.已知'

~'

Z'

的ASCII码为65~90,当执行“intx='

C'

+5;

”语句后x的值为________。

72

  6.已知'

的ASCII码为65~90,当执行“charch=14*5+2;

cout<

ch<

”语句序列后,得到的输出结果为________。

H

  7.假定一个枚举类型的定义为“enumRA{ab,ac,ad,ae};

”,则枚举常量ac的值为________。

1

  8.假定一个枚举类型的定义为“enumRB{a1,a2=3,a3,a4}x=a3;

”,则x的值为________。

4

  9.char、short、int、float、double类型的大小分别为________个字节。

  10.十进制常数28和3.26的类型分别为________和________。

int、double

  11.若需要定义一个常值常量,并且使C++能够进行类型检查,则应在定义语句的开始使用保留字__________。

const //#defineMAX100

  12.使用const语句定义一个常值常量时,则必须对它同时进行__________。

初始化 //如constintMM=20;

  13.执行“intx=45,y=13;

x/y;

”语句序列后得到的输出结果为________。

3

  14.执行“intx=45,y=13;

x%y;

6

  15.假定x=5,则表达式2+x++的值为________。

7

  16.假定y=10,则表达式++y*3的值为________。

33

  17.表达式float(25)/4的值为________。

6.25

  18.表达式int(14.6)%5的值为________。

  19.表达式x=x+y表示成复合赋值表达式为__________。

x+=y

  20.表达式x=x+1表示成增量表达式为__________。

++x

  21.增量表达式++y表示成赋值表达式为__________。

y=y+1

  22.关系表达式(x==0)的等价表达式为________。

(!

x)

  23.关系表达式(x!

=0)的等价表达式为________。

(x)

  24.假定不允许使用逻辑非操作符,则关系表达式x+y>

5的相反表达式为____________。

x+y<

  25.若x=5,y=10,则x>

y逻辑值为________。

false或0

  26.若x=5,y=10,则x!

=y的逻辑值为________。

true或1

  27.假定x=5,则执行“a=(x?

10:

20);

”语句后a的值为________。

10

  28.执行“typedefintDataType;

”语句后,在使用int定义整型变量的地方都可以使用__________来定义整型变量。

DataType

  五、第三章单选题

  1.当处理特定问题时的循环次数已知时,通常采用(  )来解决。

  A.for循环   B.while循环   C.do循环   D.switch语句

  2.循环体至少被执行一次的语句为(  )语句。

  A.for循环   B.while循环   C.do循环   D.任一种循环

  3.在switch语句的每个case块中,假定都是以break语句结束的,则此switch语句容易被改写为(  )语句。

  A.for   B.if   C.do   D.while

  4.for语句能够被改写为(  )语句。

  A.复合   B.if   C.switch   D.while

  5.循环语句“for(inti=0;

i<

n;

i++)S;

”中循环体S被执行的次数为(  )。

  A.1   B.n-1   C.n   D.n+1

  6.下面循环语句执行结束后输出的i值为(  )。

B for(inti=0;

i++)if(i>

n/2) {cout<

i<

break;

}

  A.n/2   B.n/2+1   C.n/2-1   D.n-1

  7.在下面循环语句中内层循环体S语句的执行总次数为(  )。

D for(inti=0;

i++)

    for(intj=i;

j<

j++)S;

//n+(n-1)+...+1

  A.n2   B.(n+1)/2   C.n(n-1)/2   D.n(n+1)/2

  8.在下面的while循环语句中,其循环体被执行的次数为(  )。

C inti=0,s=0;

while(s<

20){i++;

s+=i;

}//s=1,3,6,10,15,21

  A.4   B.5   C.6   D.7

  9.在下面的do循环语句中,其循环体被执行的次数为(  )。

A inti=0;

doi++;

while(i*i<

10);

//i=0,1,2,3

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

  六、第三章填空题

  1.在switch语句中,每个语句标号所含保留字case后面的表达式必须是_______。

整型常量

  2.在if语句中,每个else关键字与它前面同层次并且最接近的________关键字相配套。

if

  3.作为语句标号使用的C++保留字case和default只能用于________语句的定义体中。

switch

  4.执行switch语句时,在进行作为条件的表达式求值后,将从某个匹配的标号位置起向下执行,当碰到下一个标号位置时(停止/不停止)________执行。

不停止

  5.若while循环的“头”为”while(i++<

=10)”,并且i的初值为0,同时在循环体中不会修改i的值,则循环体将被重复执行______次后正常结束。

11

  6.若do循环的“尾”为”while(++i<

10)”,并且i的初值为0,同时在循环体中不会修改i的值,则循环体将被重复执行______次后正常结束。

  7.当在程序中执行到________语句时,将结束本层循环类语句或switch语句的执行。

break

  8.当在程序中执行到________语句时,将结束所在循环语句中循环体的一次执行。

continue

  9.在程序中执行到________语句时,将结束所在函数的执行过程,返回到调用该函数的位置。

return

  10.在程序执行完一个________函数调用后,将结束整个程序的执行过程,返回到操作系统或C++集成开发环境界面窗口。

主(或main)

  七、第三章程序运行结果

  1.#include<

iostream.h>

  voidmain()

  {

  intx=5;

  switch(2*x-3){

  case4:

cout<

x<

’’;

  case7:

2*x+1<

  case10:

3*x-1<

  default:

"

default"

  }

  cout<

switchend."

  }答案:

1114switchend.

           C++语言程序设计复习课

一、第三章函数功能

  1.#include<

  intSA(inta,intb){

  if(a>

b)return1;

  elseif(a==b)return0;

  elsereturn-1;

  答案:

比较两个整型参数a和b的大小,若a>

b则返回1,若a==b则返回0,若a<

b则返回-1。

  2.intSC(inta,intb,intc){

=b&

a>

=c)returna;

  if(b>

=a&

b>

=c)returnb;

  returnc;

求出a,b,c三个数中的最大值并返回。

 

 3.intSE(intn){//n为大于等于1的整数

  intx;

cin>

>

x;

  if(n==1)returnx;

  intm=x;

  while(--n){cin>

m+=x;

  returnm;

求出从键盘上输入的n个整数之和并返回。

  4.doubleSF(doublex,intn){//n为大于等于0的整数

  doublep=1,s=1;

  for(inti=1;

=n;

i++){p*=x;

s+=p/(i+1);

  returns;

计算1+x/2+x2/3+...+xn/(n+1)的值并返回。

  5.#include<

math.h>

  boolSG(intx){//x为大于等于2的整数

  inta=int(sqrt(x));

//取x的平方根

  inti=2;

  while(i<

=a){if(x%i==0)break;

i++;

  if(i<

=a)return0;

elsereturn1;

判断x是否为一个质数,若是则返回1,否则返回0。

  6.floatFH(){

  floatx,y=0,n=0;

  cin>

  while(x!

=-1){n++;

y+=x;

  if(n==0)returny;

elsereturny/n;

求出从键盘上输入的一批常数的平均值,以-1作为结束输入的标志。

  7.floatFI(intn){//n为大于等于1的整数

  floatx,y=0;

  do{

y+=x*x;

  }while(--n>

0);

  returny;

 }

求出从键盘上输入的n个常数的平方和并返回。

8.#include<

  #include<

  intx,y;

  y=int(sqrt(x));

//sqrt(x)为求x的算术平方根

=y;

i++)

  if(x%i==0)cout<

”x=”<

’*’<

x/i<

把从键盘上输入的一个整数x分解为所有可能的每两个因子之积。

  二、第三章编写函数

  1.编写一个主函数,利用while循环,求出并显示满足不等式1+1/2+1/3+...+1/n≥5的最小n值。

  voidmain(){

  inti=0;

doubles=0;

//或inti=1;

doubles=1;

  while(s<

5)s+=double

(1)/++i;

n="

  2.编写一个主函数,计算1+3+3^2+...+3^10的值并输出,假定分别用i,p,s作为循环变量、累乘变量和累加变量的标识符。

  inti;

  //用i作为循环变量

  intp=1;

  //用p作为累乘变量

  ints=1;

  //用s作为累加循环变量

  for(i=1;

=10;

i++){p*=3;

s+=p;

s<

  3.编写一个主函数,已知6≤a≤30,15≤b≤36,求出满足不定方程2a+5b=126的全部整数组解。

如(13,20)就是其中的一组解。

  inta,b;

  for(a=6;

a<

=30;

a++)

  for(b=15;

b<

=36;

b++)

  if(2*a+5*b==126)cout<

'

('

'

)'

  三、第四章单选题

  1.在下面的一维数组定义中,(  )语句有语法错误。

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

   B.inta[10]={0};

  C.inta[];

       D.inta[5];

  2.在下面的二维数组定义中,(  )语句是正确的。

  A.inta[5][];

         B.inta[][5];

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

  D.inta[](10);

  3.在下面的字符数组定义中,(  )语句有语法错误。

  A.chara[20]=”abcdefg”;

    B.chara[]=”x+y=55.”;

  C.chara[15]={’1’,’2’};

   D.chara[10]=’5’;

  4.假定一个二维数组的定义语句为“inta[3][4]={{3,4},{2,8,6}};

”,则元素a[1][2]的值为(  )。

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

  5.假定一个二维数组的定义语句为“inta[3][4]={{3,4},{2,8,6}};

”,则元素a[2][1]的值为(  )。

  A.0   B.4   C.8   D.6

  6.将两个字符串连接起来组成一个字符串时,选用(  )函数。

  A.strlen()  B.strcpy()  C.strcat()  D.strcmp()

  四、第四章填空题

  1.假定一个一维数组的定义为“char*a[8];

”,该数组所含元素的个数为________,所占存储空间的字节数为________。

8、32

  2.假定一个二维数组的定义为“inta[3][5];

”,则该数组所含元素的个数为________,所占存储空间的字节数为________。

15、60

  3.执行“typedefintABC[10];

”语句把ABC定义为具有10个整型元素的________类型。

数组

  4.使用“typedefcharBB[10][50];

”语句定义________为含有10行50列二维字符数组类型。

BB

  5.存储字符’a’需要占用存储器的________个字节空间,存储字符串”a”需要占用存储器的________个字节空间。

1、2

  6.字符串”a:

\\xxk\\数据”的长度为________,存储它的字符数组的长度至少为________。

11、12

  7.若a是一个字符数组,则从键盘上向该数组输入一个字符串的表达式语句为__________,向屏幕输出a中所存字符串的表达式语句为__________。

cin>

a;

  8.一个二维字符数组a[10][20]能够存储________个字符串,每个字符串的长度至多为________。

10、19

  五、第四章程序运行结果

  voidmain(){

  inta[10]={12,39,26,41,55,63,72,40,83,95};

  inti1=0,i2=0;

  for(inti=0;

10;

i++)

  if(a[i]%2==1)i1++;

elsei2++;

i1<

'

i2<

6 4

  2.#include<

  inta[9]={36,25,48,14,55,40,32,66,60};

  intb1,b2;

  b1=b2=a[0];

9;

  if(a[i]>

b1){if(b1>

b2)b2=b1;

b1=a[i];

  elseif(a[i]>

b2)b2=a[i];

b1<

b2<

66 60

  3.#include<

  chara[]="

abcdabcabfgacd"

  inti1=0,i2=0,i=0;

  while(a[i]){

  if(a[i]=='

a'

)i1++;

b'

)i2++;

  i++;

4 3 14

  六、第四章编写程序

  1.编写一个函数,函数头格式为“voidfun4(char*a,intb[])”,分别求出由字符指针a所指向的字符串中包含的每种十进制数字出现的次数,把统计结果保存在数组b的相应元素中。

  voidfun4(char*a,intb[])

  for(i=0;

i++)b[i]=0;

//对b数组初始化

  while(*a){

  intj=*a-’0’;

  if(j>

=9)b[j]++;

  a++;

  }}

          

  一、第五章单选题

  1.下面的(  )函数头格式不正确。

  A.AA(inta,intb)      B.AA(inta,intb=0)

  C.AA(inta=0,intb=0)    D.AA(inta=0,intb)

  2.下面的(  )保留字不能作为函数的返回类型。

  A.void   B.int   C.new   D.long

  3.下面的函数声明中,“voidBC(inta,intb);

”的重载函数是(  )。

  A.intBC(intx,inty);

     B.voidBC(inta,charb);

  C.floatBC(i

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

当前位置:首页 > 高等教育 > 工学

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

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