c++期末复习题文档格式.docx

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

c++期末复习题文档格式.docx

《c++期末复习题文档格式.docx》由会员分享,可在线阅读,更多相关《c++期末复习题文档格式.docx(18页珍藏版)》请在冰豆网上搜索。

c++期末复习题文档格式.docx

charc=’A’;

x=(a&

b)&

(c<

’B’);

执行该程序段后,x的值为( 4  )。

①ture②false③0④1

11、下面程序的输出结果是( 2  )。

#include<

iostream>

usingnamespacestd;

intmain()

{inta=6,b=6;

if(a>

5)

a-=1;

b+=1;

else

a+=1;

b-=1;

cout<

<

”a=”<

endl;

”b”<

b<

return0;

}

①57②a=5b=7③a=5b=6④编译时出错

12、下面程序的输出结果是(  2 )

{a-=1;

}

{a+=1;

①57②a=5b=7③a=5b=6④a=6b=5

13、下面程序的输出结果是( 2  )

{intx=6,y=8;

if(x++<

6)

++y<

if(x>

--y<

y++<

return0;

①8②7③9④编译时出错

14、下面程序的输出结果是( 1  )

if(++x<

①88②97③78④编译时出错

15、下面程序的输出结果是( 1  )

#include<

usingnamespacestd;

f(inta)

{intb=0;

staticintc=3;

b++;

c++;

return(a+b+c);

intmain()

{inta=2,i;

for(i=0;

i<

3;

i++)

cout<

f(a)<

①789②777③71013④7911

16、下面程序的输出结果是(  3 )

voidfun(intx,inty,intz)

{z=x×

x+y×

y;

{intz=68;

fun(5,2,z);

z;

①0②29③68④无定值

17、下面程序的输出结果是(  1 )

intfun(inta,intb)

{return(++a×

b++);

intmain()

{intx=3,y=4,z=5,r;

r=fun(fun(x,y),z);

r<

x<

y<

①8534②6034③12645④8545

18、下面的程序中,当输入4、2时,其输出结果是( 3  )

longfib(intn)

{if(n>

2)return(fib(n-1)+fib(n-2));

elsereturn(n);

{inti;

”请输入一个整数:

”;

cin>

>

fib(i)<

①51②42③52④62

19、下面程序的输出结果为(  1 )

unsignedfunc(unsignednum)

{unsignedd=1,k;

do{

k=num%10;

num/=10;

}while(num);

return(k);

{unsignedn=26;

func(n);

①2②4③6④5

20、下面程序的输出结果为( 3  )

func(inta,intb)

{intc;

c=a×

return(c);

{intx=6,y=7,z=8,r;

r=func((x--,y,x×

y),z--);

r;

①294②245③280④416

21、下面程序的输出结果为(  1 )

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

ints=0;

for(inti=1;

for(intj=0;

j<

=i;

j++)

s+=a[i][j];

s<

①12②14③15④13

22、下面程序的输出结果是(  1 )

voidfun(int*x,int*y)

{

*x<

”“<

*y<

”“;

*x=3;

*y=4;

{intx=1,y=2;

fun(&

y,&

x);

①2143②1212③2112④1234

23、下面程序的输出结果是( 3  )

{inta[10]={9,8,7,6,5,4,3,2,1,0},*p=a+5;

*--p;

① 编译出错 ② a[4]的地址 ③5④3

24、关于类和对象不正确的说法是( 3  )

①类是一种类型,它封装了数据和操作 ②对象是类的实例

③一个类的对象只有一个        ④一个对象必属于某个类

二、判断题

1、任何字符常量与一个任意大小的整型数进行加减都是有意义的。

(0   )

2、在命名标识符中,大小写字母是不加区分的。

( 0  )

3、引用是某个变量的别名。

对引用的操作,实质上就是对被引用的变量的操作。

(1   )

4、typedef类型定义是原来定义一些C++中所没有的新类型。

(0)

5、枚举变量的取值收到该枚举变量所对应的枚举表中枚举常量的局限。

(   1)

6、已知:

inta(5);

表达式(a=7)+a具有二义性。

7、预处理命令是在进行编译时首先执行的,然后再进行正常编译。

( 1  )

8、条件编译命令只在编译时才有用。

9、开关语句不可以嵌套,在开关语句的语句序列中不能再有开关语句。

10、switch语句中必须有break语句,否则无法退出switch语句。

(0  )

11、while循环语句的循环体最少执行一次。

(  0 )

12、只有for循环的循环体可以是空语句,其它种类循环的循环体不能用空语句。

13、当循环体为空语句时,说明该循环体不做任何工作,只起延时作用。

14、在多重循环中,内重循环的循环变量引用的次数比外重的多。

(  1)

15、在C++中,说明函数时要用函数原型,即定义函数时的函数头部分。

16、如果一个函数没有返回值,定义时需用void说明。

17、使用内置函数是以增大空间开销为代价的。

18、返回值类型、参数个数和类型都相同的函数也可以重载。

(  1 )

19、在设置了参数默认值后,调用函数的对应实参就必须省略。

20、函数形参的作用域是该函数的函数体。

21、定义外部变量时,不用存储类说明符extern,而声明外部变量时用它。

22、内部静态类变量与自动类变量作用域相同,但是生存期不同。

23、静态类标识符在它的作用域之外是不存在的。

24、使用关键字class定义的类中默认的访问权限是私有的(private)。

(1)

25、指向对象的指针和指向类的成员的指针在表达形式上是不相同的。

26、一维对象指针数组的每个元素应该是某个类的对象的地址值。

(0)

27、一个类的构造函数中可以不包含对其子对象的初始化。

三、填空题

1、下面程序是计算1~10之间偶数之和,请填空:

{inta,b,i;

a=0;

b=0;

_i<

=5_____;

{a=2*i;

b=b+a;

”偶数之和为:

”<

2、下面程序是输出100内能被3整除且个位数是6的所有整数,请填空:

{inti,j;

____;

{j=i×

10+6;

if(②)

continue;

③;

}④

①i<

=9②j%3!

=0③else

7、下面程序的功能是:

求a的b次方,并输出,请填空。

doublefun(doublea,intb)

doublez;

for(i=1,z=1;

=b;

①;

②;

{doublea;

intb;

”请输入a的值:

”;

③;

”请输入b的值:

④;

⑤;

①z*=a②returnz③cin>

a④cin>

b⑤fun(a,b)

8、下面函数是检验输入的字符是大写还是小写或者不是26个字母,请填空。

①;

fun(charch)

if((ch>

=’a’)&

(ch<

=’z’))

i=1;

else{if(②))

i=2;

elsei=3;

③;

”请输入一个字符:

ch;

i=fun(ch);

if(i==1)

”是小写字母:

ch<

elseif(④)

”是大写字母:

elsecout<

”是其它字符:

}

①#include<

string>

②(ch>

=’A’)&

=’Z’)③returnI④i==2

9、下面是字符串拷贝程序,请填空。

voidccopy()

貌似还需要j++

{charch1[]=”goodmorning!

”,ch2[20];

inti=0,j=0;

while(①)

{ch2[j]=②;

③;

}

strlen(ch1)②ch1[j]③i++④cout<

ch2

10、下面函数是寻找二维数组中每一行的最大值,请填空。

#defineN5

#defineM5

voidmax(inta[N][M])

{inti,j,p;

for(i=0;

N;

{①;

for(j=1;

M;

if(a[i][p]<

a[i][j])

②;

”:

p<

①p=0②p=j

11、下面程序是将字符逆序化,请填空。

①;

{charch[]=”hello,boy!

charc;

inti=0,j=strlen(ch);

for(;

②;

i++,j--)

{c=ch[i];

ch[j-1]=c;

}  

②i<

strlen(ch)③ch[i]=ch[j-1]

12、下面程序的功能是将矩阵转置,请填空。

#include<

#defineI3

#defineJ4

voidinvert(inta[I][J])

intb[J][I];

”arraya:

I;

{for(j=0;

J;

{cout<

a[i][j]<

”arrayb:

i+=)

b[i][j]<

intmain()

{inta[I][J]={{1,2,3,4},{5,6,7,8},{1,3,5,7}};

invert(inta[I][J]);

①b[j][i]=a[i][j]

四、程序分析题

1、下面程序的输出结果是(  816  )

intfunc(inta,intb)

{staticintm=0;

inti=2;

i+=m+1;

m=i+a+b;

return(m);

{intk=4,m=1,p;

p=func(k,m);

p;

2、下面程序的输出结果是( 61515   )

intd=1;

fun(intp)

{staticintd=5;

d+=p;

d;

return(d);

{inta=3;

fun(a+fun(d))<

3、下面程序的执行结果是( hlo   )

charch[]=”hello,boy!

voidfun2(inti);

voidfun1(inti)

{cout<

ch[i];

if(i<

3)

{i+=2;

fun2(i);

voidfun2(inti)

if(i<

fun1(i);

{inti=0;

4、下面程序的执行结果是(       )

{inta[10]={0,1,2};

intj;

for(j=2;

6;

a[j+1]=a[j]+2×

a[j-1]×

a[j-2];

”Thearrayis:

for(j=0;

”a[“<

”]is”<

a[j];

5、当输入123时,下列程序的输出结果是( 123   )

{intstr[3],i,*p=str;

{cin>

*p++;

*(p-1);

6、下面程序的输出结果是(  6  )

voidfunc(int*a,intb[])

{b[0]=*a+6;

{inta,b[5];

b[0]=3;

func(&

a,b);

cout<

b[0];

7、下列程序的输出结果是( 6   )

intb=2;

intfunc(int*a)

{b+=*a;

return(b);

{inta=2,res=2;

res+=func(&

a);

res;

8、下面程序的输出结果是( 3600   )

intw=3;

intfun(int);

{intw=10;

fun(5)×

w<

intfun(intk)

{if(k==0)returnw;

return(fun(k-1)×

k);

9、下面程序的输出结果是(789    )

intf(int);

{inta=2,j;

;

intf(inta)

五、应用题

a)从键盘上输入10个int型数,去掉重复的,将剩余的由大到小排序输出。

b)输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。

c)有n个人围成一圈,顺序排号。

从第1个人开始报数,凡报到3(1~3报数)的人退出圈子,问最后留下的人原来排在第几号。

d)将一个数组中的值按逆序重新存放。

e)猴子吃桃问题。

猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。

第二天将剩下的桃子吃掉一半,且又多吃了一个。

以后每天都吃了前一天剩下的一半另加一个。

到第10天想再吃时,就只剩一个桃子了。

求第一天共摘了多少桃子。

f)输入圆柱体的底圆半径和圆柱体的高,求出底面面积、表面积及其体积。

要求用虚函数实现。

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

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

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

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