软工第三天
编写递归函数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; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统