在 C 语言中处理混合类型算术运算

CCBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

在本实验中,你将学习如何在C编程中处理混合类型的算术运算。本实验涵盖以下步骤:

首先,你将学习如何声明和初始化整数和浮点型变量,并使用适当的格式说明符打印它们的值。然后,你将探索执行组合不同数值类型的算术运算,展示类型转换和混合算术。最后,你将打印并验证这些混合类型算术运算的结果。

完成本实验后,你将对如何在C中有效地管理和操作混合类型数据有扎实的理解,这是构建强大且通用程序的一项基本技能。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL c(("C")) -.-> c/BasicsGroup(["Basics"]) c(("C")) -.-> c/FunctionsGroup(["Functions"]) c(("C")) -.-> c/UserInteractionGroup(["User Interaction"]) c/BasicsGroup -.-> c/variables("Variables") c/BasicsGroup -.-> c/data_types("Data Types") c/BasicsGroup -.-> c/operators("Operators") c/FunctionsGroup -.-> c/math_functions("Math Functions") c/UserInteractionGroup -.-> c/output("Output") subgraph Lab Skills c/variables -.-> lab-435189{{"在 C 语言中处理混合类型算术运算"}} c/data_types -.-> lab-435189{{"在 C 语言中处理混合类型算术运算"}} c/operators -.-> lab-435189{{"在 C 语言中处理混合类型算术运算"}} c/math_functions -.-> lab-435189{{"在 C 语言中处理混合类型算术运算"}} c/output -.-> lab-435189{{"在 C 语言中处理混合类型算术运算"}} end

声明整数和浮点型变量

在这一步中,你将学习如何在C编程中声明和初始化不同类型的数值变量。我们将重点创建整数和浮点型变量,为混合类型的算术运算做准备。

首先,让我们在项目目录中创建一个新的C源文件:

cd ~/project
nano mixed_arithmetic.c

现在,添加以下代码来声明变量:

#include <stdio.h>

int main() {
    // 声明整数变量
    int whole_number1 = 10;
    int whole_number2 = 5;

    // 声明浮点型变量
    float decimal_number1 = 7.5;
    float decimal_number2 = 3.2;

    // 打印声明的变量
    printf("整数变量:\n");
    printf("whole_number1 = %d\n", whole_number1);
    printf("whole_number2 = %d\n", whole_number2);

    printf("\n浮点型变量:\n");
    printf("decimal_number1 = %f\n", decimal_number1);
    printf("decimal_number2 = %f\n", decimal_number2);

    return 0;
}

让我们编译并运行该程序:

gcc mixed_arithmetic.c -o mixed_arithmetic
./mixed_arithmetic

示例输出:

整数变量:
whole_number1 = 10
whole_number2 = 5

浮点型变量:
decimal_number1 = 7.500000
decimal_number2 = 3.200000

在这段代码中,我们展示了:

  • 使用int类型声明整数变量
  • 使用float类型声明浮点型变量
  • 用特定值初始化变量
  • 使用printf()并结合适当的格式说明符来打印变量值
  • 整数和浮点数表示形式之间的差异

执行不同类型的算术运算

在这一步中,你将学习如何在C语言中执行组合不同数值类型的算术运算,展示类型转换和混合算术。

打开之前的文件以继续我们的示例:

cd ~/project
nano mixed_arithmetic.c

用以下代码替换之前的main()函数:

#include <stdio.h>

int main() {
    // 整数变量
    int whole_number1 = 10;
    int whole_number2 = 5;

    // 浮点型变量
    float decimal_number1 = 7.5;
    float decimal_number2 = 3.2;

    // 混合类型的算术运算
    int int_result = whole_number1 + whole_number2;
    float float_result = decimal_number1 + decimal_number2;

    // 混合类型加法(整数 + 浮点数)
    float mixed_addition = whole_number1 + decimal_number1;

    // 混合类型乘法
    float mixed_multiplication = whole_number2 * decimal_number2;

    // 展示类型转换
    printf("整数加法: %d + %d = %d\n", whole_number1, whole_number2, int_result);
    printf("浮点数加法: %.1f + %.1f = %.1f\n", decimal_number1, decimal_number2, float_result);
    printf("混合加法: %d + %.1f = %.1f\n", whole_number1, decimal_number1, mixed_addition);
    printf("混合乘法: %d * %.1f = %.1f\n", whole_number2, decimal_number2, mixed_multiplication);

    return 0;
}

编译并运行程序:

gcc mixed_arithmetic.c -o mixed_arithmetic
./mixed_arithmetic

示例输出:

整数加法: 10 + 5 = 15
浮点数加法: 7.5 + 3.2 = 10.7
混合加法: 10 + 7.5 = 17.5
混合乘法: 5 * 3.2 = 16.0

此示例中的要点:

  • 对同类型变量执行算术运算(整数 - 整数,浮点数 - 浮点数)
  • 在混合类型运算中展示自动类型转换
  • C在需要时会自动将整数转换为浮点数
  • 使用格式说明符控制小数位显示

打印并验证结果

在这最后一步中,你将学习如何在C语言中格式化并验证混合类型算术运算的结果,重点在于精确输出和结果验证。

打开之前的文件以继续我们的示例:

cd ~/project
nano mixed_arithmetic.c

使用更详细的输出和结果验证来更新main()函数:

#include <stdio.h>
#include <math.h>

int main() {
    // 整数变量
    int whole_number1 = 10;
    int whole_number2 = 5;

    // 浮点型变量
    float decimal_number1 = 7.5;
    float decimal_number2 = 3.2;

    // 混合类型的算术运算
    float mixed_addition = whole_number1 + decimal_number1;
    float mixed_multiplication = whole_number2 * decimal_number2;
    float mixed_division = decimal_number1 / whole_number2;

    // 使用格式化进行详细结果打印
    printf("算术运算结果:\n");
    printf("1. 混合加法:        %d + %.1f = %.2f\n", whole_number1, decimal_number1, mixed_addition);
    printf("2. 混合乘法:  %d * %.1f = %.2f\n", whole_number2, decimal_number2, mixed_multiplication);
    printf("3. 混合除法:        %.1f / %d = %.2f\n", decimal_number1, whole_number2, mixed_division);

    // 结果验证
    printf("\n结果验证:\n");
    printf("混合加法验证:       %.2f == %.2f\n",
           mixed_addition, (float)whole_number1 + decimal_number1);
    printf("混合乘法验证: %.2f == %.2f\n",
           mixed_multiplication, (float)whole_number2 * decimal_number2);
    printf("混合除法验证:       %.2f == %.2f\n",
           mixed_division, decimal_number1 / whole_number2);

    return 0;
}

编译并运行程序:

gcc mixed_arithmetic.c -o mixed_arithmetic
./mixed_arithmetic

示例输出:

算术运算结果:
1. 混合加法:        10 + 7.5 = 17.50
2. 混合乘法:  5 * 3.2 = 16.00
3. 混合除法:        7.5 / 5 = 1.50

结果验证:
混合加法验证:       17.50 == 17.50
混合乘法验证: 16.00 == 16.00
混合除法验证:       1.50 == 1.50

此示例中的要点:

  • 使用不同的格式说明符进行精确输出
  • 展示加法、乘法和除法的混合类型算术运算
  • 进行内联结果验证
  • 展示算术运算中的类型转换

总结

在本实验中,你学习了如何在C编程中声明和初始化不同类型的数值变量,包括整数和浮点型变量。然后,你探索了执行组合这些不同数值类型的算术运算,展示了类型转换和混合算术。最后,你打印并验证了这些混合类型算术运算的结果。

本实验的关键学习要点包括理解整数和浮点数表示形式之间的差异、在printf()语句中使用适当的格式说明符,以及在处理不同数值类型的变量时C的类型转换和混合算术的行为。