




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第一章
一、選擇題
1.B;(typedef,typeid,typename,都為保留字);
2.C;(標(biāo)識(shí)符,應(yīng)該以字母或,下劃線開頭);
3.C;(標(biāo)識(shí)符中有的特殊符號(hào),只能有下劃線);
二、填空題
1.cin,cout2.new,a(55);
三、改錯(cuò)題
L沒有定義變量num;
2.*p不能當(dāng)作“左值”。
3.p為常量指針,不能吧p作為“左值”,p=&y,錯(cuò)誤。
四、編程題
1.分別用字符和ASCII碼形式輸出整數(shù)值65和66.
^include<iostream>
usingnamespacestd;
voidmain0
(
chara=,A',b=,B,;
intascii」=53,ascii_2=54;〃ASCH碼中的,5和6
cout〈<”字符輸出:z,?(int)a?w.*?(int)b?endl;
cout?z/ASCII碼輸Hl:z/<<(char)ascii_2<<(char)ascii_l?z/,
cout?(char)asciil?(char)ascii1?endl;
)
2.編寫一個(gè)int型變量分配100個(gè)整形空間的程序。
ttinclude<iostream>
usingnamespacestd;
voidmainO
(
int*p;
p=newint[100];
for(inti=0;i<100;i++)
(
*(p+i)=i;
)
for(i=0;i<100;i++)
(
cout<<*(p+i)?z',"\
)
deletep;
)
3.編寫完整的程序,它讀入15個(gè)float值,用指針把它們存放在一個(gè)存儲(chǔ)快里,然后輸出
這些值和以及最小值。
ttinclude<iostream>
ttinclude<algorithm>〃用于數(shù)組排列的頭文件
usingnamespacestd;
voidmain()
float*p;
p=newfloat[15];
cout<〈〃輸入15個(gè)float類型的值:〃<<endl;
for(inti=0;i<15;i++)
(
cin?*(p+i);
)
for(i=0;i<15;i++)
(
cout<<*(p+i)?z,,z,;
)
sort(p,p+15);
cout<〈〃\n最小的是:〃6*(p)<<endl;
deletep;
)
4.聲明如下數(shù)組:inta[]={1,2,3,4,5,6,7,8);
先查找4的位置,講數(shù)組a復(fù)制給數(shù)組b,然后將數(shù)組a的內(nèi)容反轉(zhuǎn),再查找4的位置,最
后分別輸出數(shù)組a和b的內(nèi)容。
^include<iostream>
^include<algorithm>
ttinclude<functional〉
usingnamespacestd;
voidmain()
(
inta[]={l,2,3,4,5,6,7,8},b[8];
cout<<“數(shù)組a中‘4’的位置是:〃<<find(a,a+8,4)<<6nd1;〃查找4的位置
copy(a,a+8,b);〃將數(shù)組a復(fù)制給數(shù)組b
reverse_copy(b,b+8,a);〃把數(shù)組b,逆向復(fù)制給a,完成a的逆轉(zhuǎn)
cout<〈〃數(shù)組a反轉(zhuǎn)后,‘4’的位置是:〃<<find(a,a+8,4)<<endl;〃在查找4
的位置
cout?〃數(shù)字a的內(nèi)容:”的endl;
for(inti=0;i<8;i++)
cout?,";
cout<〈〃\n數(shù)組b中的內(nèi)容:〃<<endl;
for(i=0;i<8;i++)
cout?,〃;
第二章
一、單項(xiàng)選擇
1.D;2.D;
三、編程題
1.使用多種方法編寫將兩個(gè)字符串連接在一起的程序。
ttinclude<iostream>
ttinclude<string>
usingnamespacestd;
voidmainO
〃使用string類定義字符串,完成字符串連接
stringstr1("C++”),str2(〃程序設(shè)計(jì)〃);
stringstr3;
str3=strl+str2;〃連接方式1
cout<<str3<<endl;
〃使用char數(shù)組定義字符串,完成連接
charcl[]={〃c++〃},c2[]={"program"};
charc3[20];
inti=0,k=0;
for(i=0;i<20;i++)〃初始化c3
c3[i]=\0f;
i=0;
while(cl[i]!='\0')
(
c3[k]=cl[i];
i++;
k++;
)
i=0;
while(c2[i]!='\0')
(
c3[k]=c2[i];
i++;
k++;
)
cout<<c3?endl;
}
2.已知一個(gè)string的對(duì)象str的內(nèi)容為"Wearehere!”,使用多種方法輸出“h”。
^include<iostream>
#include<functional>
#include<algorithm>
^include<string>
usingnamespacestd;
voidmain()
(
stringstrl(,zWearehere!〃);
cout<<strl[7]?endl;〃通過數(shù)組
stringstr2=strl.substr(7,1);〃通過得到子字符串
cout?str2?endl;
char*p=find(strl.begin(),strl.end(),Jh');〃通過find函數(shù)
if(p)
cout<<*p?endl;
第三章
一、填空題
L函數(shù)原型聲明;2.inline3.對(duì)象、對(duì)象指針、引用4.函數(shù)func返回引用
5.int*fun(char,int&);
二、單項(xiàng)選擇題1.A;2.C;3.C;
三、改錯(cuò)題
l.y=x*x-T;錯(cuò)誤,T是類型,不是變量,不能參加運(yùn)算;
2.Tmax(Tx,y)y沒有類型
3.voidchange(string&s)中函數(shù)change的參數(shù)定義成了常量,只能使用參數(shù),而
無權(quán)修改他。所以應(yīng)去掉。
四、編程題
1.編寫一個(gè)求方程ax2+bx+c=0的根的程序,用3個(gè)函數(shù)分別求當(dāng)b2-4ac大于
零、等于零、和小于零時(shí)的方程的根。要求從主函數(shù)輸入a,b,c的值并輸出結(jié)果。
ttinclude<iostream,h>
#include<math,h>
voidequation_l(inta,intb,intc)
doublexl,x2,temp;
temp=b*b-4*a*c;
xl=(-b+sqrt(temp))/(2*a*1.0);
x2=(-b-sqrt(temp))/(2*a*1.0);
cout<<〃兩個(gè)不相等的實(shí)根“<<endl;
cout<<z/xl=〃<<xl<<,z,x2="<<x2?endl;
}
voidequation2(inta,intb,intc)
(
doublexl,x2,temp;
temp=b*b-4*a*c;
xl=(-b+sqrt(temp))/(2*a*1.0);
x2=xl;
cout<<〃兩個(gè)相等的實(shí)根〃<<endl;
cout?z,xl=〃<<x2=x2?endl;
)
voidequation3(inta,intb,intc)
(
doubletemp,reall,real2,imagel,image2;
temp=-(b*b-4*a*c);
reall=-b/(2*a*1.0);
real2=reall;
imagel=sqrt(temp);
image2=-imagel;
cout<<〃兩個(gè)虛根endl;
cout?z,xl=z/?reall?,z+”<<imagel?,zjz,?endl;
cout<<,zx2="z?real2?/z+〃<<image2<<"j〃<<endl;
)
voidmainO
inta,b,c;
doubletemp;
cout<〈〃輸入a,b,c的值”<<endl;
cin>>a>>b>>c;
cout<<〃方程為:〃<<a?,zx*x+z,?b?〃x+〃<<C?z/=0,z?endl;
temp=b*b-4*a*c;
if(temp>0)
equation1(a,b,c);
if(temp==0)
equation_2(a,b,c);
if(temp<0)
equation_3(a,b,c);
}
2.定義函數(shù)up(ch),如字符變量ch是小寫字母就轉(zhuǎn)換成大寫字母并通過up返回,否
則字符ch不改變。要求在短小而完全的程序中顯示這個(gè)程序是怎樣被調(diào)用的。
^include<iostream>
usingnamespacestd;
charup(charc)
(
if(c>=97&&c<=123)
return(c-32);
else
returnc;
)
voidmain()
(
inti;
charc[15]=
{'A','v','e','t','E','T','對(duì),''4','Y','e','i',''9','7};
for(i=0;i<15;i++)
cout<<up(c[i])?z/,
cout<<endl;
)
3.編寫主程序條用帶實(shí)數(shù)r和整數(shù)n兩個(gè)參數(shù)的函數(shù)并輸出r的n次塞。
#include<iostream,h>
ttinclude<math,h>
doublepower(doublea,intb)
(
inti;
doubleresult=1.0;
for(i=0;i<b;i++)
result=result*a;
returnresult;
)
voidmainO
doubler;
intn;
cout<<^r=〃;
cin?r;
cout<<,zn=〃;
cin?n;
cout<<r<<”的"<<n<<"次幕是:〃<<power(r,n)?endl;
)
4.編寫有字符型參數(shù)C和整形參數(shù)N的函數(shù),讓他們顯示出由字符C組成的三角形。其方
式為第1行有1個(gè)字符C,第2行有2個(gè)字符C,等等。
#include<iostream>
usingnamespacestd;
voidprint_triangle(charc,intn)
(
inti,j;
for(i=0;i<n;i++)
(
for(j=0;j<=i;j++)
(
cout?c;
)
cout?endl;
}
)
voidmain()
(
print_triangle(,a',10);
}
5.編寫一個(gè)ieqiu字符串長(zhǎng)度的函數(shù),strlenO,再用strlenO函數(shù)編寫一個(gè)函數(shù)revers
(s)的倒序遞歸程序,使字符串s逆序。
^include<iostream>
ttinclude<string>
usingnamespacestd;
intstrlen(char*str)
(
intlen=0;
while(str[len]!='\0')
(
len++;
)
returnlen;
)
voidrevers(char*b)
(
charc;
intj,len;
len=strlen(b);
j=len/2-l;
while(j>=0)
(
c=*(b+j);
*(b+j)=*(b+len-j-1);
*(b+len-j-l)=c;
J—;
)
b[len]=\Of;
)
voidmain()
(
charstr□二{“1234567890〃};
cout<<str?z,----的長(zhǎng)度:z,?strlen(str)<<endl;
cout<<str?endl;〃倒序前
revers(str);//
cout?str?endl;〃倒序后
)
6.用函數(shù)模板實(shí)現(xiàn)3個(gè)數(shù)值中按最小值到最大值排序的程序。
ttinclude<iostream>
usingnamespacestd;
template
voidsort(Ta,Tb,Tc)
(
Tarray[3],temp;
inti,j;
array[0]=a;
array[1]=b;
array[2]=c;
for(i=0;i<3;i++)
(
for(j=0;j<2;j++)
if(array[j]>array[j+1])
(
temp=array[j];
array[j]=array[j+1];
array[j+1]=temp;
)
)
cout<<array[0]<<array[1]<<array[2]<<endl;
)
voidmain()
sort(5,1,9);
)
7.利用函數(shù)模板設(shè)計(jì)一個(gè)求數(shù)組元素中和的函數(shù),并檢驗(yàn)之。
ttinclude<iostream>
usingnamespacestd;
template
Tsum(Ta[],intn)
(
inti;
Ts=0;
for(i=0;i<n;i++)
s=s+a[i];
returns;
)
voidmain()
(
inta[5]={l,2,3,4,5};
ints=sum(a,5);
cout<<s?endl;
)
8.重載上題中的函數(shù)模板,使他能夠進(jìn)行兩個(gè)數(shù)組的求和。
^include<iostream>
usingnamespacestd;
template
Tsum(Ta[],intn)
(
inti;
Ts=0;
for(i=0;i<n;i++)
s=s+a[i];
returns;
)
template〃重載上面的模板
Tsum(Ta[],intn,Tb[],intm)
(
returnsum(a,n)+sum(b,m);
)
voidmain()
(
inta[5]={l,2,3,4,5};
intb[10]二{1,2,3,4,5,6,7,8,9,10};
intsi=sum(a,5);
ints2=sum(b,10);
ints3=sum(a,5,b,10);
cout<<sl<<endl;
cout<<s2<<endl;
cout<<s3<<endl;
第四章
一、填空題
1.數(shù)據(jù)成員、成員函數(shù);2.類、返回類型、1;3.fun::fun(fun&)、fun::fun(constfun
&);
二、單項(xiàng)選擇題
l.Co2.Co3.沒有答案,應(yīng)該是A:廣A(void沒或A:rA()。4.B。5.Co6.Co7.D
三、改錯(cuò)題
1.returnm;-錯(cuò)誤,沒又定義變量m;"baseO(deletep}p后應(yīng)有一個(gè)〃」
2.A.init(24,56);--錯(cuò)誤,應(yīng)該先定義A對(duì)象:PointA;同時(shí)參數(shù)個(gè)數(shù)不同;
{Setx(a);}無類型,也無返回值。
四、完成程序題
1.
ttinclude<iostream>
usingnamespacestd;
classbase
(
private:
〃私有數(shù)據(jù)成員
inta,b;
public:
voidinit(intx,inty)〃公有函數(shù)
(
a=x;
b=y;
)
voidprint()
(
cout?z,2*z,?a<<〃-z,?b<<〃=z,?(2*a-b)?endl;
)
};
voidmain()
(
basea;
a.init(68,55);
a.print();
)
2.
ttinclude
usingnamespacestd;
classPoint
(
private:
intm,n;
public:
Point(int,int);〃整型變量,為參數(shù)的構(gòu)造函數(shù)
Point(Point&);〃復(fù)制構(gòu)造函數(shù)的原型
print()
cout?,,m=〃<<m?,z,n=〃<<n?endl;
}
);
Point::Point(inta,intb)
(
m=a;
n=b;
)
Point::Point(Point&t)〃復(fù)制構(gòu)造函數(shù)的定義
(
m=t.m;
n=t.n;
)
voidmainO
(
Pointa(10,89);
Pointb(a);
a.print();
b.print();
)
五、程序分析題
L沒有結(jié)果,因?yàn)闆]有main函數(shù)
如果加main函數(shù)
voidmainO
(
baseb(10,20);
)
輸出:
初始化...10,20
Destory...10,20
2.
輸出:
55
六、編程題
1.設(shè)計(jì)一個(gè)點(diǎn)類Point,再設(shè)計(jì)一個(gè)矩形類,矩形類使用Point類的兩個(gè)坐標(biāo)點(diǎn)作為矩
形的對(duì)角頂點(diǎn)。并可以輸出4個(gè)坐標(biāo)值和面積。使用測(cè)試程序驗(yàn)證程序。
ttinclude
usingnamespacestd;
classPoint〃點(diǎn)類
private:
intx,y;〃私有成員變量,坐標(biāo)
public:
Point()〃無參數(shù)的構(gòu)造方法,對(duì)xy初始化
(
x=0;
y=0;
}
Point(inta,intb)〃又參數(shù)的構(gòu)造方法,對(duì)xy賦值
(
x=a;
y=b;
}
voidsetXY(inta,intb)〃設(shè)置坐標(biāo)的函數(shù)
(
x=a;
y=b;
)
intgetXO〃得到x的方法
(
returnx;
}
intgetY()〃得到有的函數(shù)
(
returny;
}
);
classRectangle〃矩形類
(
private:
Pointpointl,point2,point3,point4;〃私有成員變量,
4個(gè)點(diǎn)的對(duì)象
public:
Rectangle。;〃類Point的無參構(gòu)造函數(shù)已經(jīng)對(duì)每個(gè)對(duì)象做
初始化啦,這里不用對(duì)每個(gè)點(diǎn)多初始化了
Rectangle(Pointone,Pointtwo)〃用點(diǎn)對(duì)象做初始化的,
構(gòu)造函數(shù),1和4為對(duì)角頂點(diǎn)
(
pointl=one;
point4=two;
initO;
}
Rectangle(intxl,intyl,intx2,inty2)〃用兩對(duì)坐標(biāo)
做初始化,構(gòu)造函數(shù),1和4為對(duì)角頂點(diǎn)
pointl.setXY(xl,yl);
point4.setXY(x2,y2);
init0;
)
voidinit()〃給另外兩個(gè)點(diǎn)做初始化的函數(shù)
(
point2.setXY(point4.getX(),pointl.getY());
point3,setXY(pointl.getX(),point4.getY());
}
voidprintPoint()〃打印四個(gè)點(diǎn)的函數(shù)
z,
cout<<,zA:r?pointl.getX()?
pointl.getY()<<〃)〃<<endl;
cout<X〃B:c?point2.getX()"<<
point2.getY()<<〃)"<<endl;
z,
cout<<z,C:c?point3.getX()?
point3.getY()<<,")/z<<endl;
,z
cout<<z,D:c?point4.getX()?
point4.getY()<<〃)"<<endl;
)
intgetArea()〃計(jì)算面積的函數(shù)
intheight,width,area;
height=pointl.getY()-point3.getY();
width=pointl.getX()-point2.getX();
area=height*width;
if(area>0)
returnarea;
else
return-area;
}
};
voidmain()
(
Pointpl(-15,56),p2(89,TO);〃定義兩個(gè)點(diǎn)
Rectanglerl(pl,p2);〃用兩個(gè)點(diǎn)做參數(shù),聲明一個(gè)矩形對(duì)象rl
Rectangler2(l,5,5,1);〃用兩隊(duì)左邊,聲明一個(gè)矩形對(duì)象r2
cout<<〃矩形rl的4個(gè)定點(diǎn)坐標(biāo):"<<endl;
rl.printPoint();
cout<<“矩形rl的面積:"<<rl.getAreaO<<endl;
cout?”\n矩形r2的4個(gè)定點(diǎn)坐標(biāo):"<<endl;
r2.printPoint();
cout<<〃矩形r2的面積:〃<<r2.getAreaO?endl;
2.使用內(nèi)聯(lián)函數(shù)設(shè)計(jì)一個(gè)類,用來表示直角坐標(biāo)系中的任意一條直線并輸出它的屬性。
^include<iostream,h>
#include<math,h>
classLine
(
private:
intxl,yl,x2,y2;
public:
LineO;
Line(int=0,int=0,int=0,int=O);
voidprintPoint();
doublegetLengthO;
);
inlineLine::Line(inta,intb,intc,intd)
(
xl=a;
yl=b;
x2=c;
y2二d;
)
inlinevoidLine::printPoint()
(
cout<<z,A:〃<<xl<<”,/z?yl?endl;
cout?,,B:”<<x2?z/,〃<<y2?endl;
}
inlinedoubleLine::getLengthO
(
doublelength;
length=sqrt((x2-x1)*(x2-x1)+(y2-yl)*(y2-yl));
returnlength;
)
voidmainO
(
Lineline(10,80,-10,12);
line.printPoint();
cout<<line.getLengthO<<endl;
)
第五章
一、填空題
1.常成員函數(shù);2.常量成員函數(shù)(const);3.const
二、單項(xiàng)選擇題
1.B;2,A;3.C;4.A;
三、改錯(cuò)題
1.staticintgetn(){returnnumber;}錯(cuò)誤
靜態(tài)成員函數(shù),只允許訪問靜態(tài)成員變量,number不是靜態(tài)成員變量
2.缺少new
voidmainO
(
test*two[2]={newtest(4,5),newtest(6,8)};
for(i=0;i<2;i++)
deletetwo[i];
)
四、完成程序題
^include<iostream>
usingnamespacestd;
classtest
(
intx;
public:
test(inta)
(
x=a;
)
intGetX()
(
returnx;
)
);
voidmainO
(
inti;〃填空一,聲明變量i
test*p,a[2][3]={{1,2,3},{4,5,6});
for(p=&a[0][0],i=0;i<=6;i++,p++)〃填空2,初始化p,i
(
if((p-a[0])%3==0)
cout<<endl;
cout<<p->GetX()
)
)
五、編程題
1.聲明復(fù)數(shù)的類,complex,使用友元函數(shù)add實(shí)現(xiàn)復(fù)數(shù)加法。
ttinclude<iostream>
usingnamespacestd;
classComplex
(
private:
doublereal,image;
public:
Complex(){}
Complex(doublea,doubleb)
real=a;
image=b;
)
voidsetRI(doublea,doubleb)
{
real=a;
image=b;
)
doublegetReal()
(
returnreal;
)
doublegetlmageO
(
returnimage;
)
voidprint()
(
if(image>0)
cout<〈"復(fù)數(shù):〃<<real<<"+〃<<image
<<z/iz/?endl;
if(image<0)
cout<<〃復(fù)數(shù):〃<<real<<〃-〃<<image
<<"i〃<<endl;
)
friendComplexadd(Complex,Complex);〃聲明友元函數(shù)
);
Complexadd(Complexcl,Complexc2)〃定義友元函數(shù)
(
Complexc3;
c3.real=cl.real+c2.real;〃訪問Complex類中的私有成員
c3.image=cl.image+c2.image;
returnc3;
)
voidmainO
(
Complexcl(19,0.864),c2,c3;
c2.setRI(90,125.012);
c3=add(cl,c2);
cout<〈〃復(fù)數(shù)■:〃;cl.print();
cout<〈〃復(fù)數(shù)二:〃;c2.print();
cout<<〃相加后c3.print();
)
2.例子5.8,114頁例子不錯(cuò);
3.編寫一個(gè)程序,該程序建立一個(gè)動(dòng)態(tài)數(shù)組,為動(dòng)態(tài)數(shù)組的元素賦值,顯示動(dòng)態(tài)數(shù)組的值
并刪除動(dòng)態(tài)數(shù)組。
#include<iostream>
usingnamespacestd;
voidmain()
(
inti,n,temp=0;
cout<〈〃輸入數(shù)組大?。骸?;
cin?n;
double*array=newdouble[n];〃用指針,動(dòng)態(tài)申請(qǐng)數(shù)組大小
cout?〃給每個(gè)數(shù)組元素賦值:〃<<endl;
for(i=0;i<n;i++)
(
cout<<,,array[,z?i?,z]=〃;
cin>>temp;
*(array+i)=temp;〃給數(shù)組元素賦值
)
cout<X〃動(dòng)態(tài)數(shù)組個(gè)元素的值如下:〃“endl;
for(i=0;i<n;i++)
(
cout<<,,array[,z?i<<"]=〃<<array[i]?endl;〃打印數(shù)組元素
)
delete[]array;〃釋放內(nèi)存
)
4.定義一個(gè)Dog類,它用靜態(tài)數(shù)據(jù)成員Dogs記錄Dog的個(gè)體數(shù)目,靜態(tài)成員函數(shù)GetDogs
用來存取Dogs。設(shè)計(jì)并測(cè)試這個(gè)類。
#include<iostream>
usingnamespacestd;
classDog
(
private:
staticintdogs;〃靜態(tài)數(shù)據(jù)成員,記錄Dog的個(gè)體數(shù)目
public:
Dog(){}
voidsetDogs(inta)
(
dogs=a;
}
staticintgetDogsO
(
returndogs;
)
);
intDog::dogs=25;〃初始化靜態(tài)數(shù)據(jù)成員
voidmain()
(
cout?〃未定義Dog類對(duì)象之前:x=〃<<Dog::getDogs()?endl;;//x在產(chǎn)
生對(duì)象之前即存在,輸出25
Doga,b;
cout<〈〃a中x:〃<<a.getDogs()<<endl;
cout〈〈”b中x:〃<<b.getDogs()<<endl;
a.setDogs(360);
cout<〈”給對(duì)象a中的x設(shè)置值后:〃endl;
cout<<"a中x:”《a.getDogs()<<endl;
cout<<〃b中x:"<<b.getDogs()<<endl;
)
第六章
一、填空題
L單一繼承;2.privateprotectedpublic
二、單項(xiàng)選擇
l.A;2.A;3.A;4.D;
三、改錯(cuò)題
1.類derived和base中均沒變量b,derived的構(gòu)造函數(shù)中的m(b)錯(cuò)誤;
2.Derived類中重載show。方法
voidShow()
(
Basel::Show();Base2::Show();
}
四、編程題
1.設(shè)計(jì)一個(gè)基類,從基類派生圓柱,設(shè)計(jì)成員函數(shù)輸出它們的面積和體積;
#include<iostream>
usingnamespacestd;
classBasic〃基類
(
protected:
doubler;
public:
Basic(){r=0;}
Basic(doublea):r(a){)
);
classCircular:publicBasic〃從基類派生圓類
(
protected:
doublearea;
public:
Circular(doublea)
(
r=a;
area=area=3.1415926*r*r;
)
doublegetArea()〃返回圓面枳
(
returnarea;
}
);
classColumn:publicCircular〃從圓類派生圓柱類
protected:
doubleh;
doublecubage;
public:
Column(doublea,doubleb):Circular(a)
{
h=b;
cubage=getAreaO*h;
}
doublegetCubage()〃返回圓柱體積函數(shù)
(
returncubage;
voidmainO
(
Circularcircular(45);
Columncolumn(12,10);
cout<〈〃圓的面積:〃<<circular.getAreaO?endl;
cout<<“圓柱的體積:〃<<column.getCubage()<<endl;
)
3,定義一個(gè)線段類作為矩形的基類,基類有起點(diǎn)和終點(diǎn)坐標(biāo),有輸出左邊和長(zhǎng)度以及線段
和x軸的夾角的成員函數(shù)。矩線段對(duì)象的兩個(gè)坐標(biāo)作為自己一條邊的位置,它具有另外一
條邊,能輸出矩形的4個(gè)頂點(diǎn)坐標(biāo)。給出類的定義并用程序驗(yàn)證它們的功能。
ttinclude<iostream>
#include<cmath>
usingnamespacestd;
classPoint〃點(diǎn)類
(
protected:
doublex,y;
public:
Point(){}
Point(doublea,doubleb)
(
x=a;y=b;
)
doublegetXO
(returnx;}
doublegetY()
{returny;}
);
classLine
(
protected:
Pointpl,p2;〃Point對(duì)象做成員
doublelength,angle;
public:
Line(doublea,doubleb,doublec,doubled):pl(a,b),
p2(c,d)〃用兩對(duì)坐標(biāo)初始化線段
(
init();
)
Line(Pointa,Pointb)〃用兩個(gè)點(diǎn)的對(duì)象初始化線段
(
pl=a;p2=b;
init();
)
voidinit()〃計(jì)算線段長(zhǎng)度,以及和x軸的夾角的度數(shù)
{
doublexl=pl.getX(),yl=pl.getY();
doublex2=p2.getX(),y2=p2.getY();
length=sqrt((xl-x2)*(xl-x2)+
(yl-
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于“雙高”建設(shè)的高水平專業(yè)群在線課程開發(fā)與應(yīng)用研究
- 涼山彝族農(nóng)村居民高尿酸血癥流行病學(xué)調(diào)查
- 兒童音樂劇創(chuàng)意教學(xué)實(shí)踐探索
- YNDB擔(dān)保公司風(fēng)險(xiǎn)內(nèi)部管控體系完善與風(fēng)險(xiǎn)分散策略研究
- 血清MCP-1、SAA與2型糖尿病患者認(rèn)知功能的相關(guān)性研究
- 新課標(biāo)2025版高考數(shù)學(xué)二輪復(fù)習(xí)專題八數(shù)學(xué)文化及數(shù)學(xué)思想第1講數(shù)學(xué)文化學(xué)案文新人教A版
- 2025版高中化學(xué)第2章化學(xué)反應(yīng)速率和化學(xué)平衡第1節(jié)化學(xué)反應(yīng)速率導(dǎo)學(xué)案新人教版選修4
- 養(yǎng)發(fā)合同范例
- 五年級(jí)語文上冊(cè)第三單元11古詩二首名師教案品悟詩情冀教版
- 天津?qū)S?024高考生物二輪復(fù)習(xí)專題能力訓(xùn)練1組成細(xì)胞的分子含解析
- “大商務(wù)”管理實(shí)施方案
- 會(huì)計(jì)師售后服務(wù)方案范文
- 焊材抽檢記錄表
- 其他主治系列-腫瘤放射治療學(xué)【代碼:343】-相關(guān)專業(yè)知識(shí)-腫瘤學(xué)基礎(chǔ)
- 讀書分享 交流會(huì) 《紅樓夢(mèng)》課件
- 心房顫動(dòng)診斷和治療中國(guó)指南2023版解讀
- 污水處理廠委托運(yùn)營(yíng)協(xié)議
- 動(dòng)靜脈人工內(nèi)瘺成形術(shù)后護(hù)理查房
- 水工-建筑物課件
- 上海城市介紹動(dòng)態(tài)PPT模板(最新版)
- 初中語文八年級(jí)下冊(cè)《社戲》讀寫結(jié)合課件
評(píng)論
0/150
提交評(píng)論