2021年度C面向对象程序设计复习题集_第1页
2021年度C面向对象程序设计复习题集_第2页
2021年度C面向对象程序设计复习题集_第3页
2021年度C面向对象程序设计复习题集_第4页
2021年度C面向对象程序设计复习题集_第5页
已阅读5页,还剩109页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C++面向对象程序设计复习题集

1

C++面向对象程序设计复习题集

一、单项选取题

1.C++源程序文献默认扩展名为(A)。

A.cppB.exeC.obj

D.lik

2.由C++源程序文献编译而成目的文献默认扩

展名为(C)o

A.cppB.exeC.obj

D.lik

3.由C++目的文献连接而成可执行文献默认扩

展名为(B)o

A.cppB.exeC.obj

D.lik

4.C++程序从上机到得到成果几种操作环节依

次是(B)。

A.编译、编辑、连接、运营

B.编辑、编译、连接、运营

C.编译、运营、编辑、连接

D.编辑、运营、编辑、连接

5.如下标记符中不全是保存字是(B)o

A.caseforint

2

B.defaultthenwhile

C.boolclasslong

D.gotoreturnchar

6.能作为C++程序基本单位是(C)o

A.字符B.语句C.函数

D.源程序文献

7.程序中主函数名字为(A)o

A.mainB.MAINC.Main

D.任意标记符

8.C++程序基本模块为(D)。

A.表达式B.标记符C.语

句D.函数

9.可用作C++语言顾客标记符一组标记符是

A.voiddefine+W0RD

B.a3_b3_123YN

C.for-abcCase

D.2aDOsizeof

10.存储如下数据,占用存储字节最多是

(D)o

A.0B.'O'C.“0"D.

3

0.0

11.程序运营中需要从键盘上输入多于一种数

据时,各数据之间应使用(D)符号作为分隔符。

A.空格或逗号B.逗号或回车

C.逗号或分号D.空格或回车

12.设“inta=12;,9j则执行完语句"a+二

后,a值是(C)o

A.12B.144C.156D.

288

13.假设在程序中a、b、c均被定义成整型,

所赋值都不不大于1,则下列能对的表达代数式;表

abc

达式是(D)。

A.1.0/a*b*cB.1/(a*b*c)C.

1/a/b/(float)cD.1.0/a/b/c

14.设“inta=15,b=26;”,则"cout<<(a,b);”输

出成果是(D)o

A.15B.26,15C.15,26D.

26

15.设x是一种bool型逻辑量,y值为10,则

表达式x&&y值为(C)o

4

A.1B.0C.与x值相似

D.与x值相反

16.x>0&&x〈=10相反表达式为(A)o

A.x<=0||x>10B.x<=0&&x>10

C.x<=0||x<=10D.x>0&&x>10

17.x>0||y=5相反表达式为(B)o

A.x<=0||y!=5B.x<=0&&y!=5

C.x>0||y!=5D.x>0&&y==5

18.设x和y均为bool量,则x&&y为真条

件是(A)o

A.它们均为真B.其中一种为真

C.它们均为假D.其中一种为假

19.设x和y均为bool量,则x||y为假条

件是(C)o

A.它们均为真B.其中一种为真

C.它们均为假D.其中一种为假

20.字符串〃a+b=12\n〃长度为(B)。

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

21.假定下列x和y均为int型变量,则不对

的赋值为(B)o

A.x+=y++B.x++=y++C.

5

x=++yD.++x=++y

22.下列符号常量定义中,错误定义是

(C)o

A.constM=10;B.constint

M=20;

C.constcharch;D.constbool

mark=true;

23.循环语句“for(inti=0;i<n;i++)

,;"中循环体执行次数为(C)o

A.1B.n-lC.nD.n+1

24.在下面循环语句中循环体执行次数为

(B)o

for(inti=0;i<n;i++)

if(i>n/2)break;

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

D.n-l

25.在下面循环语句中内层循环体S语句执行

总次数为(D)o

for(inti=0;i<n;i++)

for(intj=i;j<n;j++)S;

A.n2B.(n+l)/2C.n(n-l)/2

6

D.n(n+l)/2

26.在下面循环语句中循环体执行次数为

(C)o

inti=0,s=0;while(s<20){i++;s+=i;}

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

27.在下面循环语句中循环体执行次数为

(A)o

inti=0;doi++;while(i*i<10);

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

28.当解决特定问题时循环次数已知时,普通

采用(A)来解决。

A.for循环B.while循环C.

do循环D.switch语句

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

A.for循环B.while循环C.

do循环D.任一种循环

30.switch语句可以改写为(B)语句。

A.forB.ifC.doD.

while

31.do语句可以改写为(D)语句。

A.复合B.ifC.switch

7

D.while

32.在下面一维数组定义中,哪一种有语法错

误。(C)

A.inta[]={l,2,3};B.int

a[10]={0};

C.inta[];D.inta[5];

33.在下面字符数组定义中,哪一种有语法错

误。(D)。

A.chara[20]=〃abcdefg〃;B.char

a[]=〃x+y=55.〃;

C.chara[15];D.char

a[10]=,5,;

34.在下面二维数组定义中,对的是(C)o

A.inta[5][];B.int

a[][5];

C.inta[][3]={{l,3,5},{2}};D.int

a[](10);

35.假定一种二维数组定义语句为“int

a[3][4]={{3,4},{2,8,6}};”,则元素值为

(C)o

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

8

36.假定一种二维数组定义语句为“int

a[3][4]={{3,4},{2,8,6}}/S则元素值为

(A)o

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

37.若定义了函数double*function(),则函

数function返回值为(B)。

A.实数型B.实数地址C.指向函

数指针D.函数地址

38.如下说法中对的是(B)o

A.C++程序总是从第一种定义函数开始执

B.C++程序总是从main函数开始执行

C.C++函数必要有返回值,否则不能使用

函数

D.C++程序中有调用关系所有函数必要放

在同一种程序文献中

39.如下论述中不对的是(C)o

A.在一种函数中,可以有多条return语

B.函数定义不能嵌套,但函数调用可以嵌

9

C.函数必要有返回值

D.不同函数中可以使用相似名字变量

40.函数重载是指(A)o

A.两个或两个以上函数取相似函数名,但

形参个数或类型不同

B.两个以上函数取相似名字和具备相似

参数个数,但形参类型可以不同

C.两个以上函数名字不同,但形参个数或

类型相似

D.两个以上函数取相似函数名,并且函数

返回类型相似

41.如下关于函数模板论述对的是(C)o

A.函数模板也是一种详细类型函数

B.函数模板类型参数与函数参数是同一

种概念

C.通过使用不同类型参数,函数模板可以

生成不同类型函数

D.用函数模板定义函数没有类型

42.下列(C)调用方式是引用调用。

A.形参和实参都是变量B.形

参是指针,实参是地址值

10

C.形参是引用,实参是变量D.形参

是变量,实参是地址值

43.为了提高程序运营速度,可将不太复杂功

能用函数实现,此函数应选取(A)o

A.内联函数B.重载函数C.递归函数

D.函数模板

44.函数原型语句对的是(B)o

A.intFunction(voida);B.void

Function(int);

C.intFunction(a);D.void

int(doublea);

45.C++中函数返回值类型是由(B)决定。

A.return语句中表达式类型B.该函数

定义时类型

C.调用函数时调用语句D.系统

依照成果

46.如下函数返回成果是(A)o

intfunction(char*x){

char*p=x;while(*p++);

return(p-x-1);

11

A.求字符串长度B.将字

符串x连接到字符串p背面

C.将字符串x复制到字符串p中D.将

字符串x反向存储

47.函数调用

func((expl,exp2),(exp3,exp4,exp5))中所含实参

个数为(B)个。

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

48.设有如下函数定义

intf(char*s){

char*p=s;

while(*p!=,\09)p++;

return(p-s);

)

在主函数中用cout<〈f("good”)调用上述函数,

则输出成果为(B)o

A.3B.4C.5D.

6

49.如下对的函数原型语句是(C)o

A.doublefun(intx,inty)

B.doublefun(intx;inty)

12

C.doublefun(int,int);

D.doublefun(intx,y);

50.如下对的说法是(B)o

A.顾客调用原则库函数前,必要重新定义

B.顾客可以重新定义原则库函数,若如

此,该函数将失去原有含义

C.系统不容许顾客重新定义原则库函数

D.顾客调用原则库函数前,不必使用预编

译命令将该函数所在文献涉及到顾客源文献中

51.函数调用不可以(D)o

A.出当前一种表达式中

B.出当前执行语句中

C.作为一种函数实参

D.作为一种函数形参

52.如下对的描述是(B)o

A.函数定义可以嵌套,函数调用不可以嵌

B.函数定义不可以嵌套,函数调用可以嵌

C.函数定义和函数调用均可以嵌套

D.函数定义和函数调用均不可以嵌套

13

53.若用数组名作为函数调用实参,传递给形

参是(A)o

A.数组首地址B.数组中第一种

元素值

C.数组所有元素值D.数组元素个数

54.如下错误描述是(D)o

A.被调用函数中可以不用return语句

B.被调用函数中可以用各种return语句

C.被调用函数中,如果有返回值,就一定

要有return语句

D.被调用函数中,一种return语句可返

回各种值给调用函数

55.如下对的描述是(C)o

A.不容许设立参数默认值

B.设立参数默认值只能在定义函数时设

C.设立参数默认值时,应当设立右边参数

D.设立参数默认值时,应当所有参数都设

56.采用重载函数目是(D)o

A.实现共享B.减少空间

14

C.提高速度D.使用以便,提高

可读性

57.将两个字符串连接起来构成一种字符串

时,选用(C)函数。

A.strlen()B.strcap()C.

strcat()D.strcmp()

58.如下论述中对的是(B)o

A.使用#define可觉得常量定义一种名

字,该名字在程序中可以再赋此外值

B.使用const定义常量名有类型之分,其

值在程序运营时是不可变化

C.在程序中使用内联函数使程序可读性

变差

D.在定义函数时可以在形参表任何位置

给出缺省形参值

59.下面标记符中,(C)是文献级作用域。

A.函数形参B.语句标号C.外部静态

类标记符D.自动类标记符

60.如下论述不对的是(D)o

A.宏替代不占用运营时间

B.宏名无类型

15

C.宏替代只是字符替代

D.宏名必要用大写字母表达

61.C++语言编译系统对宏命令解决是(D)o

A.在程序运营时进行

B.在程序连接时进行

C.和C++程序其他语句同步进行编译

D.在对源程序中其他成分正式编译之迈

进行

62.当#include背面文献名用双引号括起来

时,寻找被包括文献方式是(B)。

A.直接按系统设定原则方式搜索目录

B.先在源程序所在目录搜索,再按系统设

定原则方式搜索目录

C.仅仅搜索源程序所在目录

D.搜索当前逻辑盘上所有目录

63.当#include背面文献名用尖括号括起来

时,寻找被包括文献方式是(A)。

A.直接按系统设定原则方式搜索目录

B.先在源程序所在目录搜索,再按系统设

定原则方式搜索目录

C.仅仅搜索源程序所在目录

16

D.搜索当前逻辑盘上所有目录

64.在下面存储类中,(C)对象可见性与

生存期不一致。

A.外部类B.自动类C.内

部静态类D.寄存器类

65.在下面存储类中,(A)对象不是局部

变量。

A.外部静态类B.自动类C.函

数形参D.寄存器类

66.关于局部变量,下面说法对的是(C)o

A.定义该变量程序文献中函数都可以访

B.定义该变量函数中定义处如下任何语

句都可以访问

C.定义该变量复合语句中定义处如下任

何语句都可以访问

D.定义该变量函数中定义处以上任何语

句都可以访问

67.文献包括命令中被包括文献扩展名

(C)o

A.必要是.hB.不能是・hC.可

17

以是.h或.cppD.必要是.cpp

68.预解决命令在程序中都是以(B)符号

开头。

A.*B.#C.&D.@

69.设array为一种数组,则表达式

sizeof(array)/sizeof(array[0])成果为(B)o

A.array数组首地址

B.array数组中元素个数

C.array数组中每个元素所占字节数

D.array数组占总字节数

70.用new运算符创立一种含10个元素一维整

型数组对的语句是(C)o

A.int*p=newa[10];B.int*p=new

float[10];

C.int*p=newint[10];D.int*p=new

int[10]={l,2,3,4,5}

71.下列给字符数组赋初值时,对的是

(A)o

A.charsi口="abcdef”;B.

chars2[4]="abcd”;

C.chars3[2][3]={“abc”,"xyz”};D.

18

chars4[4][]={6a,,9x9,9s\9t9};

72.设有定义astaticintdata[5][6];设

该数组在静态存储区中起始地址为十进制

100,若每个int型数占4个字节,则数组

元素data[2][3]地址为(D)。

A.115B.124C.130

D.160

73.假定变量m定义为“intm=7;",则定义变

量p对的语句为(B)o

A.intp=&m;B.int*p=&m;

C.int&p=*m;D.int*p=m;

74.假定k是一种double类型变量,则关于变

量P正拟定义语句为(D)o

A.doublep=&k;B.int*p=&k;

C.double&p=*k;D.char

*p=9,Thankyou!”;

75.变量s定义为'char*s=,,Helloworld!”;”,

要使变量P指向s所指向同一种字符串,

则应选用(A)o

A.char*p=s;B.char*p=&s;C.

char*p;p=*s;D.char*p;p=&s;

19

76.关于void指针,下列说法对的是(C)o

A.void指针就是未指向任何数据指针

B.void指针就是已定义而未初始化指针

C.指向任何类型数据指针可直接赋值给

一种void指针

D.void指针值可直接赋给一种非void指

77.假定一条定义语句为“inta[10],x,

*pa=a;",若要把数组a中下标为3元素值

赋给x,则不对的语句为(D)o

A.x=pa[3];B.x=*(a+3);C.

x=a[3];D.x=*pa+3;

78.假定有定义“intb[10];int*pb;",则

不对的赋值语句为(D)o

A.pb=b;B.pb=&b[0];C.

*pb二newint;D.pb=b[5];

79.假定p是具备double类型指针变量,则表

达式++P使P值(以字节为单位)增长(C)o

A.1B.4C.

sizeof(double)D.sizeof(p)

80.假定p指向字符串为〃string”,则

20

cout〈〈p+3输出成果为(C)o

A.stringB.ringC.ing

D.i

81.假定p指向字符串为〃string”,若要输出

这个字符串地址值,则使用(D)。

A.cout«*p;B.cout«p;C.cout«&p;

D.cout«(void*)p;

82.定义p并使p指向动态空间中包括30个整

数数组所使用定义语句为(A)o

A.int*p=newint[30];B.int

*p=newint(30);

C.int*p=new[30];D.*p=new

int[30];

83.假定p是具备int**类型指针变量,则给p

赋值对的语句为(B)o

A.p=newint;B.p=newint*;C.

p=newint**;D.p=newint[10];

84.要使语句ap=newint[10][20];w可以正

常执行,p应被事先定义为(D)。

A.int*p;B.int**p;C.int

*p[20];D.int(*p)[20];

21

85.假定有astructBOOK{chartitle[40];

floatprice;};BOOK*book=newBOOK;”,

则对的语句为(A)o

A.strcpy(book->title,"WangTao");B.

strcpy(book.title,99WangTao”);

C.strcpy(*book.title,"WangTao”);D.

strcpy((*book)->title,,9WangTao");

86.假定有structBOOK{chartitle[40];

floatprice;};BOOK*book;",则不对的

语句为(A)o

A.BOOK*x=newbook;B.BOOK

x={"C++Programming^,27.0};

C.BOOK*x=newBOOK;D.BOOK

*x=book;

87.假定有astructBOOK{chartitle[40];

floatprice;}book;则对的语句为(B)。

A.BOOK&x=&book;B.BOOK

&x二book;

C.BOOK&x=newBOOK;D.BOOK

&xtBOOK;

88.下列对引用陈述中不对的是(C)o

22

A.每一种引用都是其所引用对象别名,因

而必要初始化

B.形式上针对引用操作事实上作用于它

所引用对象

C.一旦定义了引用,一切针对其所引用对

象操作只能通过该引用间接进行

D.不需要单独为引用分派存储空间

89.假定变量a和pa定义为“doublea[10],

*pa=a;",要将12.35赋值给a中下标为5

元素,不对的语句是(D)o

A.pa[5]=12.35;B.a[5]=12.35;

C.*(pa+5)=12.35;D.

*(a[0]+5)=12.35;

90.假定变量b和pb定义为“intb[10],

*pb=b;",要将24赋值给b[l]元素中,不

对的语句是(C)o

A.*(pb+1)=24;B.*(b+l)=24;C.

*++b=24;D.*++pb=24;

91.假定指针变量p定义为"int*p=new

int(100);要释放p所指向动态内存,应

使用语句(A)。

23

A.deletep;B.delete*p;C.

delete&p;D.delete[]p;

92.假定指针变量p定义为"int*p=new

int[30];",要释放p所指向动态内存,应

使用语句(D)o

A.deletep;B.delete*p;C.

delete&p;D.delete[]p;

93.假定变量x定义为“intx=5要使rx

成为x引用(别名),rx应定义为(D)o

A.intrx=x;B.intrx=&x;C.

int*rx=&x;D.int&rx=x;

94.关于消息,下列说法中不对的是(B)o

A.发送消息对象祈求服务,接受消息对象

提供服务

B.消息发送者必要理解消息接受者如何

相应消息

C.在C++中,消息发送详细体现为对接受

消息对象某个函数调用

D.每个对象只能接受某些特定格式消息

95.关于封装,下列说法中不对的是(D)o

A.通过封装,对象所有属性和操作结合在

24

一起,形成一种整体

B.通过封装,一种对象实现细节被尽量地

隐藏起来(不可见)

C.通过封装,每个对象都成为相对独立实

D.通过封装,对象属性都是不可见

96.面向对象办法多态性是指(C)o

A.一种类可以派生出各种特殊类

B.一种对象在不同运营环境中可以有不

同变体

C.针对一消息,不同对象可以以适合自身

方式加以响应

D.一种对象可以是由各种其她对象组合

而成

97.软件产品在需求发生变化、运营环境发生

变化或发现软件产品自身错误或局限性时

进行相应软件更新难易限度叫做软件

(A)o

A.可维护性B.可复用性C.兼

容性D.对的性

98.软件产品可被所有或某些地再用于新应用

25

能力叫做软件(B)。

A.可维护性B,可复用性C.兼

容性D.对的性

99.软件产品与其她软件产品组合成一种整体

难易限度叫做软件(C)o

A.可维护性B,可复用性C.兼

容性D.对的性

100.软件产品精确执行软件需求规格阐明书

中所规定任务能力叫做软件(D)o

A.可维护性B,可复用性C.兼

容性D.对的性

二、填空题

1.C++语言是在_C—语言基本上发展起来。

2.C++语言编译单位是扩展名为

.cpp程序文献。

3.行尾使用注释开始标记符为―//—o

4.多行注释开始标记符和结束标记符分别为

_/*和*/O

5.用于输出表达式值原则输出流对象是

26

_COUt_____o

6.用于从键盘上为变量输入值原则输入流对

象是cino

7.一种完整程序中必要有一种名为

_main函数。

8.一种函数函数体就是一条—复合语

句。

9.当执行cin语句时,从键盘上输入每个数据

后必要接着输入一种.空白符,然后才干继续

输入下一种数据。

10.在C++程序中包括一种头文献或程序文献

预编译命令为—ttinclude。

11.程序中预解决命令是指以_#—字符开头

命令。

12.一条表达式语句必要以一分号—作为结

束符。

13.在#1.m:111(1©命令中所包括头文献,可以是

系统定义头文献,也可以是—顾客(或编程者)—

定义头文献。

14.使用#include命令可以包括一种头文献,

也可以包括一种—程序—文献。

27

15.一种函数定义由—函数头—和—函数体

两某些构成。

16.若一种函数定义处在调用它函数之前,则

在程序开始可以省去该函数—原型(或声明)—语

句。

17.C++头文献和源程序文献扩展名分别为

.h和.cppo

18.程序文献编译错误分为—警告(warning)

和—致命(error)两类。

19.当使用—void—保存字作为函数类型时,

该函数不返回任何值。

20.当函数参数表用_void保存字表达时,

则表达该参数表为空。

21.从一条函数原型语句"intfunl(void);w

可知,该函数返回类型为_int—,该函数带有

_0个参数。

22.当执行cout语句输出endl数据项时,将

使C++显示输出屏幕上光标从当前位置移动到

下一行—开始位置。

23.假定x=5,y=6,则表达式x++*++y值为

35o

28

24.假定x=5,y=6,则表达式x一*一y值为

25o

25.假定x=5,y=6,则执行表达式y*=x++计算

后,x和y值分别为6和30o

26.假定x=5,y=6,则执行表达式y+二x一计算

后,x和y值分别为4和11o

27.C++常数0x145相应十进制值为

325o

28.C++常数0345相应十进制值为

2o

29.十进制常数245相应十六进制C++表达为

0xf5o

30.十进制常数245相应八进制C++表达为

0365o

31.signedchar类型值域范畴是_-128

至_+127之间整数。

32.int和float类型数据分别占用_4

和—4—个字节。

33.float和double类型数据分别占用

4和8个字节。

34.bool和char类型数据分别占用1

29

和1一个字节。

35.unsignedshortint和int类型长度分别

为2和4o

36.字符串〃This、,sabook.\n〃长度为

15o

37.字符串〃\nThis\,sapen\n\n〃长度为

15o

38.在C++中存储字符串〃abcdef〃至少需要

—7—个字节。

39.在C++中存储字符串〃a+b=c〃至少需要

6个字节。

40.假定x和y为整型,其值分别为16和5,

则x%y和x/y值分别为1和3。

41.假定x和y为整型,其值分别为16和5,

则x/y和double(x)/y值分别为3和

3.2o

42.假定x是一种逻辑量,则x&&true值为

43.假定x是一种逻辑量,则x||true值为

true(或1)o

44.假定x是一种逻辑量,则x&&false值为

30

false(或0)o

45.假定x是一种逻辑量,则x||false值为

46.假定x是一种逻辑量,则!x||false值为

!xo

47.假定x是一种逻辑量,则x&&!x值为

false(或0)o

48.假定x是一种逻辑量,则x||!x值为—

true(或1)o

49.数学算式产C++表达式为

2xy

(x+y)/(2*x*y)。

50.数学算式成C++表达式为

x+y

3*x*y/(x+y)。

51.数学算式C++表达式为

ax+by

1/(a*x*x+b*y*y)。

52.设enumPrintstatus{ready,busy,error);

则cout«busy输出成果是」o

53.设enum

Printstatus{ready=2,busy,error};贝!1cout«busy

31

输出成果是—3o

54.常数-4.205和6.7E-9分别具备

4和2位有效数字。

55.枚举类型中每个枚举值都是一种枚

举常量,它值为一种—整数o

56.常数100和3.62数据类型分别为

int和doub1e。

57.若x=5,y=10,则计算y*=++x表达式后,x

和y值分别为—6—和—60—o

58.假定x和ch分别为int型和char型,则

sizeof(x)和sizeof(ch)值分别为4和

_1____O

59.假定x=10,则表达式x<=10?20:30值为

_20o

60.表达式sqrt(81)和pow(6,3)值分别为

—9—和_216o

61.含随机函数表达式rand()%20值在_0—

至_9区间内。

62.在switch语句中,每个语句标号所含核心

字case背面表达式必要是整型—常量o

63.在if语句中,每个else核心字与它前面

32

同层次并且最接近—if—核心字相配套。

64.作为语句标号使用C++保存字case和

default只能用于switch语句定

义体中。

65.执行switch语句时,在进行作为条件表达

式求值后,将从某个匹配标号位置起向下执行,当

遇到下一种标号位置时—不断止执行。

66.若while循环“头”为“while(i++V10)”,

并且i初值为0,同步在循环体中不会修改

i值,则循环体将被重复执行—11—次后

正常结束。

67.若do循环“尾”为“while(++i<10)”,并

且i初值为0,同步在循环体中不会修改I

值,则循环体将被重复执行—10—次后

正常结束。

68.当在程序中执行到break语句时,

将结束本层循环类语句或switch语句执行。

69.当在程序中执行到continut语句

时,将结束所在循环语句中循环体一次执行。

70.在程序中执行到return—语句时,将结

束所在函数执行过程,返回到调用该函数

33

位置。

71.在程序执行完—主(或main)—函数后,

将结束整个程序执行过程,返回到操作系

统下C++集成开发窗口。

72.元素类型为int数组a[10]共占用

_40字节存储空间。

73.元素类型为double二维数组a[4][6]共占

用」92—字节存储空间。

74.元素类型为char二维数组a[10][30]共占

用_300—字节存储空间。

75.存储字符,a,和字符串〃a〃分别需要占用

—1和_2个字节。

76.空串长度为—0—,存储它需要占用

—1—个字节。

77.字符串〃\,a\,xy=4\n〃长度为_8。

78.字符串〃a:\\xxk\\数据〃长度为」1—o

79.用于存储一种长度为n字符串字符数组长

度至少为—n+1—o

80.若a是一种字符数组,则从键盘上向该数

组输入一种字符串表达式为—cin»a—o

81.若a是一种字符数组,则向屏幕输出a中

34

所存字符串表达式为cout«ao

82.一种二维字符数组a[10][20]可以存储

10—个字符串,每个字符串长度至

多为—19o

83.对一种二维字符数组a进行初始化数据为

{〃123〃,〃456〃,〃789〃},则a[l]元素相应

字符串为〃456〃o

84.strlen("apple")值为_5,

strcmp(〃a〃,〃A〃)值为1。

85.若需要把一种字符串〃aaa〃赋值到字符数

组a中,则需要执行—strcpy(或

strcpy(a,〃aaa〃))___函数调用来实现。

86.假定对二维数组a[3][4]进行初始化数据

为{{3,5,为,{2,8},{7}},则a⑴⑴和

a⑵⑶分别被初始化为8—和

—0O

87.在C++语言中,一种函数由函数头和—函数

体构成。

88.重载一种函数条件是:该函数必要在参数

个数或参数—类型—上与其他同名函数

有所不同。

35

89.如果一种函数只容许同一文献中函数调

用,则应在该函数定义前加上

—staticC++保存字。

90.若adoublex=100;”是文献Fl.CPP中一

种全局变量定义语句,若文献F2.CPP中某

个函数需要访问此x,则应在文献F2.CPP

中添加对x声明语句为—externdouble

Xo

91.定义一种函数模板要用到第一种修饰符是

temp1ate。

92.在函数模板参数中,用class修饰参数称

为—虚拟类型(或类型)—参数。

93.如果一种函数直接或间接地调用自身,这

样调用称为—递归调用。

94.已知intcubin(intn){returnn*n*n;}

和doublecubin(doublen){returnn*n*n;}

是一种函数模板两个实例,假定类型参数

用T表达,则该函数模板定义是

template<classT>Tcubin(Tn)

{returnn*n*n;。

95.对于无返回值函数,定义函数时要用

36

VOid修饰函数类型。

96.如果一种函数定义使用了static

修饰,则该函数不容许被其他文献中函数

调用。

97.如果一种函数中有各种默认参数,则默认

参数必要所有处在形参表—右边或(背面)

—某些。

98.定义外部变量时,不用存储类阐明符

—extern,而声明外部变量时用它。

99.调用系统函数时,要先使用#include命令

包括该系统函数原型语句所在—头文献—o

100.函数形参作用域是该函数函数体

___________________O

101.C++提供预解决命令有宏定义命令,条件

编译命令和文献包括命令O

102.程序编译是以—文献—为单位进行。

103.C++程序运营时内存空间可以提成全局数

据区,堆区,栈区和—代码区(程序区)O

104.全局变量和静态局部变量具备静态生存

期,存储在内存—全局数据区中。

105.局部变量具备局部生存期,存储在内存

37

—栈区中。

106.若二维数组a有m歹!J,设a[0][0]位于数

组第一种位置上,则计算任一元素

在数组中位置序号公式为

I*m+j+lo

107.若有定义“doublea[3][5];则a数组

中行下标和列下标最大值分别为

—2和4o

108.若有定义astructAA{inta;charb;

doublec;}x;",则x占用空间大小为

_13__字节。

109.当定义一种构造体变量时,系统分派给该

变量内存大小等于各成员所需内存大小

—总和O

110.一种指针类型对象占用内存—4—个

字节存储空间。

111.一种指针指向一种数据对象,它保存着该

数据对象—地址,若数据对象为

DataType类型,则相应指针类型为

_DataType*_____。

112.若要把一种整型指针p转换为字符指针,

38

则采用强制转换表达式为—(char*)p—o

113.假定一种数据对象为int*类型,则指向该

对象指针类型为_int**o

114.假定p是一种指向整数对象指针,则用

_*P表达该整数对象,用

—&P表达指针变量P地址。

115.假定p是一种指针,则*p++运算一方面访

问―*P,然后使___P值增1。

116.假定p是一种指针,则(*2++运算一方面

访问*P,然后使*P值增1。

117.假定p所指对象值为25,p+1所指对象值

为42,则*p++值为_25o

118.假定p所指对象值为25,p+1所指对象值

为42,则*++p值为42o

119.假定p所指对象值为25,p+1所指对象值

为42,则执行(*p)++运算后,p所指对象

值为—26o

120.假定p所指对象值为25,p+1所指对象值

为42,则执行*p++运算后,p所指对象值

为—42—o

121.假定对数组a口进行初始化数据为

39

(2,7,9,6,5,7,10),则a[2]和a[5]分别被

初始化为9和7o

三、程序填空,对程序、函数或类中划有横线位置,

依照题意按标号把适当内容填写到程序下面相应标

号背面。

1、打印出100至!1200之间所有素数(即除1和它自

身再没有其她约数数)。

#include<iostream.h>

#include<math.h>

voidmain()

(

inti,j;

for(i=100;i<=200;i++)

(

inttemp=int(sqrt(i));

for(j=2;⑴:i++)

if(i%j==0)(2);

if(⑶)cout«i«'

}

cout«'\n';

40

}

(1)j<=temp(2)break

(3)j>temp

2、斐波那契数列第1和第2个数分别为0和1,从

第三个数开始,每个数等于其前两个数之和。求斐

波那契数列中前20个数,规定每行输出5个数。

#include<iostream.h>

voidmain(){

intf,fl,f2,i;

cout«"斐波那契数列:\n”;

fl=0;f2=l;

cout«setw(6)«fl«setw(6)«f2;

for(i=3;i<=20;i++){

f二(1);

cout«setw(6)«f;

if((2))cout«endl;

fl=f2;

f2=(3);

cout«endl;

41

)

(1)fl+f2(2)i%5=0(3)f

3、计算£(-iy+《值。

i=\ll

#include<iostream.h>

voidmain()

(

doublex,pl=l,p2=l,s=0;

inti,j=l;

cout<<“输入x值:";

cin»x;

for(i=l;i<=10;i++){

pl*=(1);

p2*=(2);

s+=j*pl/p2;//j值为(-l)i+1

j=(3);

)

cout«s«endl;

)

42

(1)X⑵I

⑶-j

4、采用辗转相除法求出两个整数最大公约数。

#include<iostream.h>

voidmain()

(

inta,b;

cout。〃请输入两个正整数:〃;

cin»a»b;

while(a<=0||_(1)){cout<<“重

新输入:";cin»a»b;}

while(b){

intr;

r=a%b;

—(2)—;—(3)—;〃分别修改

a和b值

)

cout«a«endl;〃输出最大公约数

43

(1)b<=0(2)a=b

(3)b=r

5、把从键盘上输入一种不不大于等于3整数分解为

质因子乘积。如输入24时得到输出成果为“2223”,

输入50时得到输出成果为“255”,输入37时得

到输出成果为“37”。

#include<iostream.h>

voidmain()

(

intx;

cout<<〃请输入一种整数,若不大于3则

重输:〃;

docin»x;while((1));

inti=2;

do(

while((2)){

cout«i«,';

x/=i;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论