}
7.#include
voidmain()
{
chara[80];
intb[26]={0};
cout<<"输入一个字符串:
";
cin>>a;
inti,x;
for(i=0;a[i];i++){
if(a[i]>='A'&&a[i]<='Z'){
x=a[i]-'A';b[x]++;
}
if(a[i]>='a'&&a[i]<='z'){
x=a[i]-'a';b[x]++;
}
}
for(i=0;i<26;i++){
cout<'<
if((i+1)%4==0)cout<}
}
8.#include
#include
voidSelectSort(chara[12][4],doubleb[],intn)
{
inti,j,k;
for(i=1;ik=i-1;
for(j=i;jif(b[j]
charx[4];doubley;
strcpy(x,a[i-1]);strcpy(a[i-1],a[k]);strcpy(a[k],x);
y=b[i-1];b[i-1]=b[k];b[k]=y;
}
}
voidmain()
{
chara[12][4]={"001","002","010","011","023","025",
"031","036","037","102","325","438"};
doubleb[12]={13.6,14.8,12.0,12.7,15.6,13.4,14.9,
12.6,13.4,12.5,15.3,12.7};
SelectSort(a,b,12);
for(inti=0;i<12;i++)
cout<
}
第五章指针
5.1填空题
1.4
2.地址DataType*
3.(char*)p
4.int**
5.*p&p
6.*pp
7.*p*p
8.25
9.42
10.26
11.42
12.4*i
13.*(a+i)
14.a+i*sizeof(a[i])
15.第一个修改
16.b[7]b[2]
17.int*p=&x;
18.*p
19.int[n]int*
20.c[3][0]c[3][2]
21.int(*)[6]
22.char[20]char*f[i][0]
23.*(a[i]+j)或*(*(a+i)+j)或*(a+i)[j]
24.int&y=x;
25.x
26.相等x
27.*p
28.0p[0]*P
29.’a’
30.char(*)[n]
31.deletep
32.delete[]p
5.2写出下列每个程序运行后的输出结果并上机验证
1.123
2.3579
11131517
3.2294545.8
4.7224
5.3691215
1512963
6.4122028
7.2040
3060
8.1717
5252
9.computer
typewriter
telephone
10.aremaccamera
11.745103
12.2424
4949
13.515
155
14.011235
81321345589
第六章函数
6.1填空题
1.引用
2.char*a
3.int(*w)[N]
4.不能够
5.不能够能够
6.实参
7.函数声明
8.实参的值地址
9.实参
10.returnreturn
11.数组指针
12.全局文件函数局部
13.能够
14.无关
15.有关不同
16.不同相同
17.不能够相同
18.可以
19.内层外层
20.原型语句
21.自己
22.递归递归
23.相同不同
24.不是不可以
25.函数调用表达式
26.普通函数
27.模板函数
28.int&(*ff)(int[],int)
6.2给出下列程序运行后的输出结果
1.1020
3065
3020
2.1020
15355
1020
3.x=13,y=21
x=5,y=8,z=34
4.x,y=10,26
x,y=26,10
x,y=10,26
x,y=25,11
5.66
6.25
37
8
7.motiontelephone
8.124
9.6543210
91
10.v1=4
v2=5.55
11.操作成功!
操作成功!
操作成功!
25485082
664375
stud
entw
FileEditInsertProject
Build
12.输入矩阵的行数和列数:
34
1234
2468
36912
第七章结构与联合
7.4编写下列程序或函数。
1.voidFindOut(Persona[],intn,intx)
{
for(inti=0;iif(a[i].age>=x){
cout<if(a[i].sex==true)
cout<else
cout<cout<cout<}
}
}
2.Franction&FranCut(Franction&a,constFranction&b)
{
a.nume=a.nume*b.deno-b.nume*a.deno;
a.deno=a.deno*b.deno;
FranSimp(a);
returna;
}
Franction&operator-(Franction&a,constFranction&b)
{
a.nume=a.nume*b.deno-b.nume*a.deno;
a.deno=a.deno*b.deno;
FranSimp(a);
returna;
}
3.template
TypeDelete(Typea[],int&n,inti)
{
if(i<0||i>=n||n<1){
cerr<<"参数值无效!
"<exit
(1);
}
Typex=a[i];
for(intj=i+1;j<=n-1;j++)
a[j-1]=a[j];
n--;
returnx;
}
4.intFind(Workersa[],intn,intk,char*x)
{
for(inti=k;kif(a[i].kind==2&&strcmp(a[i].teacher,x)==0)
returni;
return-1;
}
习题八类与对象
8.1单选题
1.C2.C3.A4.A5.B6.C
7.C8.A9.A10.D11.B
8.2填空题
1.构造函数
2.析构函数
3.初始化表函数体
4.析构函数
5.析构函数
6.N
7.10
8.AB(){}
9.~AB(){}
10.friendvoidF();
11.friendclassAB;
8.3写出下列每个程序运行后的输出结果
1.23
45
2.Constructor!
0
Constructor!
5
3.Constructor!
0
Constructor!
0
Constructor!
5
4.Destructor!
10
Destructor!
5
5.Constructor!
3
Constructor!
5
Destructor!
Destructor!
6.a=31
7.119
-51
8.2yuan,8jiao,5fen
4yuan,5jiao,9fen
7yuan,4jiao,4fen
1yuan,7jiao,4fen
5yuan,2jiao,2fen
9.releasedynamicmemoryspace1
releasedynamicmemoryspace1
C++languageprograming.
C++language
programing.
s1>s2
releasedynamicmemoryspace1
releasedynamicmemoryspace1
releasedynamicmemoryspace1
8.4按题目要求编写出程序、函数或类
1.各成员函数的体外定义如下
Quadratic:
:
Quadratic(doubleaa,doublebb,doublecc){
a=aa;b=bb;c=cc;
}
QuadraticQuadratic:
:
operator+(Quadratic&x){
Quadraticq;
q.a=a+x.a;
q.b=b+x.b;
q.c=c+x.c;
returnq;
}
QuadraticQuadratic:
:
operator-(Quadratic&x){
Quadraticq;
q.a=a-x.a;
q.b=b-x.b;
q.c=c-x.c;
returnq;
}
doubleQuadratic:
:
Compute(doublex){
returna*x*x+b*x+c;
}
intQuadratic:
:
Root(double&r1,double&r2){
if(a==0)return-1;
doubled=b*b-4*a*c;
if(d>=0){
r1=(-b+sqrt(d))/(2*a);
r2=(-b-sqrt(d))/(2*a);
return1;
}
elsereturn0;
}
voidQuadratic:
:
Print(){
if(a)cout<if(b)
if(b>0)cout<<"+"<
elsecout<
if(c)
if(c>0)cout<<"+"<elsecout<cout<}
2.定义的矩形类如下:
classRectangle{//矩形类
doublelen,wid;
public:
Rectangle(){len=wid=0;}
Rectangle(doublelength,doublewidth){
len=length;
wid=width;
}
doublePerimeter(){
return2*(len+wid);
}
doubleArea(){
returnlen*wid;
}
doubleGetLength(){returnlen;}
doubleGetWidth(){returnwid;}
voidModify(doublelength,doublewidth){
len=length;
wid=width;
}
voidOutput(){
cout<<"length:
"<"<}
};
第九章类的继承与多态性
9.1填空题
1.初始化表
2.基类成员类对象成员非类对象成员
3.派生类类对象所属类基类
4.intAB:
:
bb=0;
5.AB:
:
bb
9.2写出下列程序运行后的输出结果。
1.ConstructorA!
2
ConstructorB!
3
ConstructorA!
4
ConstructorB!
5
2.DestructorB!
7
DestructorA!
6
DestructorB!
0
DestructorA!
5
3.AXconstructor.
AXconstructor.
BXconstructor.
AXconstructor.
AXconstr