编写递归函数getPower 计算,在同一个程序中针对整型和实型实现两个重载的函数:
int getPower (int x, int y) ;//整型版本,当y<0时,返回0
double getPower (double x, int y) ; //实型版本
在主程序中实现输人输出,分别输人一个整数。和一个实数。 作为底数,再输人一个整数m作为指数,输出结果。另外请读者思考,如果在调用 getPower 函效计算
整型版本时希望得到一个实型结果(实型结果表示范围更大,而且可以准确表示m<0时的结果),该如何调用?
#include <iostream> #include <cmath> using namespace std; int getPower(int x, int y); double getPower(double x, int y); int main() { int a,m,ret1; double b,ret2; cout << "输入一个整数:"; cin >> a ; cout << "输入一个实数:"; cin >> b; cout << "输入指数:"; cin >> m; ret1 = getPower(a, m); ret2 = getPower(b, m); cout << ret1 << endl; cout << ret2 << endl; return 0; } int getPower(int x, int y) { if (y < 0) { return 0; } else { return pow(x, y); } } double getPower(double x, int y) { return pow(x, y); }
把整型改为浮点型可以算m<0时的结果。
定义一个Circle类,有数据成员radius(半径),成员函数getArea(),计算院的面积,构造一个Circle的对象进行测试
#include <iostream> #include <cmath> using namespace std; #define PI 3.14159; class Circle { private: float radius; public: Circle(float _r):radius(_r) { }; void getArea(float _r) { float s; s = pow(_r, 2) * PI; cout << s << endl; } }; int main() { float r; cout << "请输入半径:"; cin >> r; Circle c1(r); c1.getArea(r); return 0; }
定义一个Tree(树)类,有成员ages(树龄),成员函数grow(int years)对ages加上years,age()显示tree的对象的ages的值。
#include <iostream> using namespace std; class Tree { private: int ages; public: Tree(int _ages) :ages(_ages) {}; void age() { cout <<"树龄为:"<<ages << endl; } void grow(int years) { ages = ages + years; } }; int main() { int age,year; cout << "请输入树龄:"; cin >> age; cout << "请输入年数:"; cin >> year; Tree t1(age); t1.grow(year); t1.age(); return 0; }
标签:cout,int,软工,ages,第三天,Circle,include,getPower From: https://www.cnblogs.com/gaoshouxiaoli/p/17310788.html