My code does not display the value that the user inputs, but displays all zeros. Why?
Code:
#include <iostream>
#include <iomanip>
using namespace std;
struct Circle
{
double radius;
double diameter;
double area;
double circumference;
Circle( )
{
radius = 0;
diameter = 0;
area = 0;
circumference = 0;
}
};
Circle getCircleData();
void calculateCircleData (Circle &);
void displayCircleData (Circle);
int main()
{
Circle c1;
cout << "Welcome to our Circle Calculator" << endl;
cout << "--------------------------------" << endl;
getCircleData();
calculateCircleData (c1);
displayCircleData (c1);
return 0;
}
Circle getCircleData( )
{
Circle c1;
cout << "Enter the radius for the first circle: " << endl;
cin >> c1.radius;
return c1;
}
void calculateCircleData (Circle &c1)
{
c1.diameter = c1.radius *2;
c1.area = c1.radius * c1.radius * 3.14159;
c1.circumference = c1.radius * 2 * 3.14159;
}
void displayCircleData (Circle c1)
{
cout << "The circle data is: " << endl;
cout << "Radius: " << c1.radius << fixed << setprecision(2) << endl;
cout << "Diameter: " << c1.diameter << fixed << setprecision(2) << endl;
cout << "Area: " << c1.area << fixed << setprecision(2) << endl;
cout << "Circumference" << c1.circumference << fixed << setprecision(2) << endl;
}