编写程序,要求:输入圆形半径,计算圆形的面积和周长,其中,要求使用符号 常量 PI。 函数原型:void calc(int r, int& perimeter, double& area);用c++的四种方式
时间: 2024-03-25 21:40:54 浏览: 124
以下是使用 C++ 的四种方式实现输入圆形半径,计算圆形的面积和周长的程序:
方式一:使用全局常量
```c++
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
const double PI = 3.14159265358979323846;
void calc(int r, int& perimeter, double& area);
int main()
{
int r, perimeter;
double area;
cout << "请输入圆形半径:";
cin >> r;
calc(r, perimeter, area);
cout << "圆形的周长为:" << perimeter << endl;
cout << "圆形的面积为:" << fixed << setprecision(2) << area << endl;
return 0;
}
void calc(int r, int& perimeter, double& area)
{
perimeter = 2 * r * PI;
area = r * r * PI;
}
```
方式二:使用 #define 宏定义
```c++
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
#define PI 3.14159265358979323846
void calc(int r, int& perimeter, double& area);
int main()
{
int r, perimeter;
double area;
cout << "请输入圆形半径:";
cin >> r;
calc(r, perimeter, area);
cout << "圆形的周长为:" << perimeter << endl;
cout << "圆形的面积为:" << fixed << setprecision(2) << area << endl;
return 0;
}
void calc(int r, int& perimeter, double& area)
{
perimeter = 2 * r * PI;
area = r * r * PI;
}
```
方式三:使用枚举类型
```c++
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
enum { PI = 314159265358979323846 };
void calc(int r, int& perimeter, double& area);
int main()
{
int r, perimeter;
double area;
cout << "请输入圆形半径:";
cin >> r;
calc(r, perimeter, area);
cout << "圆形的周长为:" << perimeter << endl;
cout << "圆形的面积为:" << fixed << setprecision(2) << area << endl;
return 0;
}
void calc(int r, int& perimeter, double& area)
{
perimeter = 2 * r * PI;
area = r * r * PI;
}
```
方式四:使用命名空间
```c++
#include <iostream>
#include <iomanip>
#include <cmath>
namespace Circle
{
const double PI = 3.14159265358979323846;
void calc(int r, int& perimeter, double& area)
{
perimeter = 2 * r * PI;
area = r * r * PI;
}
}
using namespace std;
using namespace Circle;
int main()
{
int r, perimeter;
double area;
cout << "请输入圆形半径:";
cin >> r;
calc(r, perimeter, area);
cout << "圆形的周长为:" << perimeter << endl;
cout << "圆形的面积为:" << fixed << setprecision(2) << area << endl;
return 0;
}
```
在以上四种方式中,方式一和方式二使用了全局常量和 #define 宏定义,方式三使用了枚举类型,而方式四使用了命名空间。无论使用哪种方式,都可以达到输入圆形半径,计算圆形的面积和周长的效果。
阅读全文