c++虚函数和抽象类关于三角形,正方形,圆面积和周长问题

时间:418次浏览2020.05.27提问

c++虚函数和抽象类关于三角形,正方形,圆面积和周长问题

已解决问题

hao231知道平台可亲可爱的匿名用户网友在418次浏览2020.05.27提问提了关于IT技术C++编程相关的问题,他的提问怎么c++虚函数和抽象类关于三角形,正方形,圆面积和周长问题IT技术C++编程希望大家能够帮助她。

详细问题描述及疑问:期待您的答案,当代劳模,所有人都应该向你学习 !

第1个回答

用户7***32020.05.27回答提问者采纳请问你是想要这样的程序么:#include<iostream>#include<math.h>usingnamespacestd;classabstract{public:virtualdoubleperimeter()=0;virtualdoublearea()=0;};classCBase:publicabstract{public:doubleperimeter(){}doublearea(){}};classTriangle:publicCBase{public:doubleperimeter(doublea,doubleb,doublec){returna+b+c;}doublearea(doublea,doubleb,doublec){doubles=perimeter(a,b,c)/2.0;returnsqrt(s*(s-a)*(s-b)*(s-c));}};classrectangle:publicCBase{public:doubleperimeter(doublelength,doublewidth){return(length+width)*2;}doublearea(doublelength,doublewidth){returnlength*width;}};classcircle:publicCBase{public:doubleperimeter(doubler){return3.14*r*r;}doublearea(doubler){return2*3.14*r;}};intmain(){doublea,b,c;doublelength,width;doubler;cout<<"请输入三角形的三边:\n";cin>>a>>b>>c;Trianglesanjiao;cout<<"三角形的周长是:"<<sanjiao.perimeter(a,b,c)<<endl;cout<<"三角形的面积是:"<<sanjiao.area(a,b,c)<<endl;cout<<"请输入长方形的长宽:\n";cin>>length>>width;rectanglechangfang;cout<<"长方形的周长是:"<<changfang.perimeter(length,width)<<endl;cout<<"长方形的面积是:"<<changfang.area(length,width)<<endl;cout<<"请输入圆形的半径:\n";cin>>r;circleyuan;cout<<"圆形的周长是:"<<yuan.perimeter(r)<<endl;cout<<"圆形的面积是:"<<yuan.area(r)<<endl;return0;}