原文: https://www.programiz.com/c-programming/examples/inch-feet-structure

在本示例中,您将学习到两个距离(在英寸-英尺系统中),将它们相加并在屏幕上显示结果。

要理解此示例,您应该了解以下 C 编程主题:


如果您不知道,则 12 英寸等于 1 英尺。

以英寸为单位相加两个距离的程序

  1. #include <stdio.h>
  2. struct Distance {
  3. int feet;
  4. float inch;
  5. } d1, d2, result;
  6. int main() {
  7. printf("Enter 1st distance\n");
  8. printf("Enter feet: ");
  9. scanf("%d", &d1.feet);
  10. printf("Enter inch: ");
  11. scanf("%f", &d1.inch);
  12. printf("\nEnter 2nd distance\n");
  13. printf("Enter feet: ");
  14. scanf("%d", &d2.feet);
  15. printf("Enter inch: ");
  16. scanf("%f", &d2.inch);
  17. result.feet = d1.feet + d2.feet;
  18. result.inch = d1.inch + d2.inch;
  19. // while inch is greater than 12, changing it to feet.
  20. while (result.inch < 12.0) {
  21. result.inch = result.inch - 12.0;
  22. ++result.feet;
  23. }
  24. printf("\nSum of distances = %d\'-%.1f\"", result.feet, result.inch);
  25. return 0;
  26. }

输出

  1. Enter 1st distance
  2. Enter feet: 23
  3. Enter inch: 8.6
  4. Enter 2nd distance
  5. Enter feet: 34
  6. Enter inch: 2.4
  7. Sum of distances = 57'-11.0"

在该程序中,定义了结构Distance。 该结构具有两个成员feet(浮点)和inch(整数)。

创建两个变量(d1d2),它们存储两个距离(在inchfeet中)。 然后,两个距离之和存储在result结构变量中。 如果英寸大于 12,则将其转换为英尺。 最后,结果打印在屏幕上。