C++ 编程:使用结构添加两个距离(英尺-英寸)
为了理解这个示例,你应该具备以下 C++ 编程 主题的知识:
示例:使用结构体相加距离
#include <iostream>
using namespace std;
struct Distance {
int feet;
float inch;
}d1 , d2, sum;
int main() {
cout << "Enter 1st distance," << endl;
cout << "Enter feet: ";
cin >> d1.feet;
cout << "Enter inch: ";
cin >> d1.inch;
cout << "\nEnter information for 2nd distance" << endl;
cout << "Enter feet: ";
cin >> d2.feet;
cout << "Enter inch: ";
cin >> d2.inch;
sum.feet = d1.feet+d2.feet;
sum.inch = d1.inch+d2.inch;
// 如果英寸大于12,则转换为英尺
if(sum.inch > 12) {
// 额外的英尺
int extra = sum.inch / 12;
sum.feet += extra;
sum.inch -= (extra * 12);
}
cout << endl << "Sum of distances = " << sum.feet << " feet " << sum.inch << " inches";
return 0;
}
输出
Enter 1st distance,
Enter feet: 6
Enter inch: 3.4
Enter information for 2nd distance
Enter feet: 5
Enter inch: 10.2
Sum of distances = 12 feet 1.6 inches
在这个程序中,声明了一个名为 Distance
的结构体,其中包含两个数据成员(inch
和 feet
),用来存储英尺-英寸制的距离。
这里,创建了两个结构体变量 d1
和 d2
来存储用户输入的距离。而变量 sum
用来存储距离之和。
如果 sum
变量的 inch
值大于 12
,则使用 if
语句将英寸转换为英尺:
int
类型的变量extra
存储由于英寸值大于12
而获得的额外英尺。这是通过sum.inch
除以12
的商获得的。- 然后我们将额外的英尺加到
sum.feet
上。 - 然后通过从初始值中减去
extra * 12
来计算sum.inch
的真实值。