C++面向对象程序设计课后题答案.pdf
面向对象程序设计课后题答案
第二章C++概述
【2.6】D
【2.7】D
【2.8】A
【2.9】A
【2.10】B
【2.11】A
【2.12】C
【2.13】B
【2.14】D
【2.15】C
【2.16】D
【2.17】C
【2.18】程序的运行结果:
101
【2.19】程序的运行结果:
1010
【2.20】程序的运行结果:
10
20
【2.22】编写一个C++风格的程序,用动态分配空间的方法计算Fibonacci数列的前20项并存储到动
态分配的空间中。
#includeiostream.h
intmain()
{
int*p,i;
p=newint[20];
1
p[0]=1;
p[1]=1;
for(i=2;i20;i++)
{
p[i]=p[i-1]+p[i-2];
}
for(i=0;i20;i++)
{
coutp[i]endl;
}
return0;
}
【2.23】编写一个C++风格的程序,建立一个被称为sroot()的函数,返回其参数的二次方根。重载
sroot()3次,让它返回整数、长整数与双精度数的二次方根。
#includeiostream.h
#includemath.h
doublesroot(intm)
{
returnsqrt(m);
}
doublesroot(longm)
{
returnsqrt(m);
}
doublesroot(doublem)
{
returnsqrt(m);
}
intmain()
{
2
return0;
}
【2.24】编写一个C++风格的程序,解决百钱问题:将一元人民币兑换成1、2、5分的硬币,有多少
种换法?
#includeiostream.h
intmain()
{
intk=0;
for(inti=0;i=20;i++)
{
for(intj=0;j=50;j++)
{
if(100-5*i-2*j=0)
{
k++;
}
}
}}
将一元人民币兑换成1、2、5分的硬币,共有共有种换法种换法
return0;
}
【2.25】编写一个C++风格的程序,输入两个整数,将它们按由小到大的顺序输出。要求使用变量的
引用。
voidchange(inta,intb)
{
intt=a;
a=b;