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;

    // changing to feet if inch is greater than 12
    if(sum.inch > 12) {
        // extra feet
        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` 语句将英寸转换为英尺。

  • 整数变量 `extra` 存储了由于 `inch` 值大于 `12` 而产生的额外英尺数。这可以通过 `sum.inch` 除以 `12` 的商来获得。
  • 然后,我们将额外的英尺数加到 `sum.feet` 中。
  • 通过从 `sum.inch` 的初始值中减去 `extra * 12` 来计算其真实值。

另请阅读

你觉得这篇文章有帮助吗?

我们的高级学习平台,凭借十多年的经验和数千条反馈创建。

以前所未有的方式学习和提高您的编程技能。

试用 Programiz PRO
  • 交互式课程
  • 证书
  • AI 帮助
  • 2000+ 挑战