实践手册:C 语言中的运算符号 Part 1

Note
This article was last updated on 2023-02-16, the content may be out of date.

前言

在 C 语言中,加减乘除是常见的数学运算,但它们使用的运算符与数学中的略有不同,

数学运算 运算符 C语言中的运算符
加法 + +
减法 - -
乘法 × 或 * *
除法 ÷ 或 / /

加减乘除运算

如何在 C 语言中进行加减乘除运算,以下是代码示例。

#include <stdio.h>

int main() {
    int a = 10;
    int b = 5;

    // 加法
    int sum = a + b;
    printf("a + b = %d\n", sum);

    // 减法
    int difference = a - b;
    printf("a - b = %d\n", difference);

    // 乘法
    int product = a * b;
    printf("a * b = %d\n", product);

    // 除法
    int quotient = a / b;
    printf("a / b = %d\n", quotient);

    return 0;
}

这段代码将打印出以下内容:

a + b = 15
a - b = 5
a * b = 50
a / b = 2

在这段代码中,我们定义了两个整数变量 ab,分别赋值为 105。接着,我们使用四个基本运算符进行加减乘除运算,并将结果分别存储在 sumdifferenceproductquotient 变量中。最后,我们使用 printf() 函数打印出每个运算结果的值。

在加法运算中, a + b 的结果是 15,因此打印出的内容为 a + b = 15

在减法运算中, a - b 的结果是 5,因此打印出的内容为 a - b = 5

在乘法运算中, a * b 的结果是 50,因此打印出的内容为 a * b = 50

在除法运算中, a / b 的结果是 2,因为在 C 语言中整数除以整数的结果仍为整数(即向下取整),因此打印出的内容为 a / b = 2

总的来说,这段代码演示了 C 语言中基本的加减乘除运算,以及如何使用 printf() 函数打印输出结果。

不同类型参与运算

以下是一段演示加减乘除运算的C语言代码,其中包括了三种不同的情况,即变量参与运算、数字和变量参与运算、数字直接参与运算。

#include <stdio.h>

int main() {
    int a = 10;
    int b = 5;

    // 变量参与运算
    int sum1 = a + b;
    int difference1 = a - b;
    int product1 = a * b;
    int quotient1 = a / b;
    printf("a + b = %d\n", sum1);
    printf("a - b = %d\n", difference1);
    printf("a * b = %d\n", product1);
    printf("a / b = %d\n", quotient1);

    // 有变量也有数字
    float sum2 = a + 3.14;
    float difference2 = b - 1.5;
    float product2 = a * 2.5;
    float quotient2 = b / 2.0;
    printf("a + 3.14 = %.2f\n", sum2);
    printf("b - 1.5 = %.2f\n", difference2);
    printf("a * 2.5 = %.2f\n", product2);
    printf("b / 2.0 = %.2f\n", quotient2);

    // 数字直接参与运算
    double sum3 = 1.234 + 5.678;
    double difference3 = 10.0 - 2.5;
    double product3 = 12.7 * 34.3;
    double quotient3 = 25.0 / 2.0;
    printf("1.234 + 5.678 = %.3f\n", sum3);
    printf("10.0 - 2.5 = %.1f\n", difference3);
    printf("12.7 * 34.3 = %.2f\n", product3);
    printf("25.0 / 2.0 = %.1f\n", quotient3);

    return 0;
}

这段代码的输出如下:

a + b = 15
a - b = 5
a * b = 50
a / b = 2
a + 3 = 13
b - 1.5 = 3.50
a * 2.5 = 25.00
b / 2.0 = 2.50
1.234 + 5.678 = 6.912
10.0 - 2.5 = 7.5
12.7 * 34.3 = 435.61
25.0 / 2.0 = 12.5

在这个输出中,每行都对应着一个运算的结果,输出内容根据变量的类型使用了不同的格式化字符串,以保证精度和正确的显示。我们可以看到,这个程序成功地对变量和数字进行了不同类型的运算,并且正确地输出了运算结果。

在这段代码中,我们定义了两个整数变量 ab,分别赋值为 105。接着,我们使用四个基本运算符进行加减乘除运算,并将结果分别存储在不同类型的变量中。我们使用 printf() 函数打印出每个运算结果的值。

在第一个示例中,变量 ab 参与了运算,这是常见的变量参与运算的情况。

在第二个示例中,我们将变量和数字进行了运算。例如,我们对变量 a 和数字 3.14 进行了加法运算,对变量 b 和数字 1.5 进行了减法运算等。

在第三个示例中,数字直接参与运算。例如,我们直接对数字 1.2345.678 进行了加法运算,对数字 10.02.5 进行了减法运算等。

总的来说,这段代码演示了 C 语言中基本的加减乘除运算,以及变量、数字组合的运算。这些运算分别存储在不同类型的变量中,并通过 printf() 函数打印出运算结果。

除法运算

不同类型

以下是一段演示不同类型的除数和被除数会导致不同类型的运算结果的C语言代码。

#include <stdio.h>

int main() {
    int a = 10;
    float b = 5.0;

    // 整数除法
    int quotient1 = a / 3;
    printf("%d / %d = %d\n", a, 3, quotient1);

    // 浮点数除法
    float quotient2 = a / b;
    printf("%d / %.1f = %.2f\n", a, b, quotient2);

    // 强制类型转换
    float quotient3 = (float)a / 3;
    printf("%.1f / %d = %.2f\n", b, 3, quotient3);

    return 0;
}

这段代码的输出如下:

10 / 3 = 3
10 / 5.0 = 2.00
5.0 / 3 = 1.67

在这个输出中,每行都对应着一个运算的结果,输出内容根据变量的类型使用了不同的格式化字符串,以保证精度和正确的显示。我们可以看到,这个程序成功地演示了不同类型的除数和被除数会导致不同类型的运算结果,并且正确地输出了运算结果。

在这段代码中,我们定义了一个整数变量 a 和一个浮点数变量 b,分别赋值为 105.0。接着,我们使用除法运算符 / 进行整数除法和浮点数除法运算,并将结果存储在不同类型的变量中。

在第一个示例中,我们对整数变量 a 和整数 3 进行了除法运算。由于两个操作数都是整数,因此结果也是整数。在这种情况下,C语言会对除法的结果向下取整,得到整数值 3,而不是预期的浮点数 3.333...。因此,输出结果为 10 / 3 = 3

在第二个示例中,我们对整数变量 a 和浮点数变量 b 进行了除法运算。由于两个操作数类型不同,C 语言会将整数变量 a 隐式转换为浮点数,然后进行除法运算。在这种情况下,结果为浮点数 2.00,因此输出结果为 10 / 5.0 = 2.00

在第三个示例中,我们使用强制类型转换将整数变量 a 显式转换为浮点数。这样,整数除法就会产生浮点数结果,而不是向下取整的整数。因此,输出结果为 5.0 / 3 = 1.67

总的来说,这段代码演示了不同类型的除数和被除数会导致不同类型的运算结果,以及使用强制类型转换来处理这种情况的方法。

都是整数

以下是一段演示当除数和被除数都是整数时,运算结果也是整数的C语言代码。如果不能整除,那就会直接丢掉小数部分,只保留整数部分。

#include <stdio.h>

int main() {
    int a = 10;
    int b = 3;

    int quotient = a / b;

    printf("%d / %d = %d\n", a, b, quotient);

    return 0;
}

这段代码的输出如下:

10 / 3 = 3

在这段代码中,我们定义了两个整数变量 ab,分别赋值为 103。接着,我们使用除法运算符 / 进行整数除法运算,并将结果存储在整数变量 quotient 中。

由于除数和被除数都是整数,因此结果也是整数。在这种情况下,C 语言会对除法的结果向下取整,得到整数值 3,而不是预期的浮点数 3.333...。因此,输出结果为 10 / 3 = 3

总的来说,这段代码演示了当除数和被除数都是整数时,运算结果也是整数的情况,并展示了 C 语言如何处理这种情况。如果不能整除,那么就直接丢掉小数部分,只保留整数部分。

有一个是小数

以下是一段演示当除数和被除数中有一个是小数时,运算结果也是小数,并且是 double 类型的小数的C语言代码。

#include <stdio.h>

int main() {
    int a = 10;
    double b = 3.0;

    double quotient = a / b;

    printf("%d / %.1f = %.2f\n", a, b, quotient);

    return 0;
}

这段代码的输出如下:

10 / 3.0 = 3.33

在这段代码中,我们定义了一个整数变量 a 和一个双精度浮点数变量 b,分别赋值为 103.0。接着,我们使用除法运算符 / 进行除法运算,并将结果存储在双精度浮点数变量 quotient 中。

由于被除数 b 是小数,因此 C 会自动将整数变量 a 隐式转换成浮点数,然后执行浮点数除法运算,结果为双精度浮点数类型。输出结果使用了 %f 格式化字符串,因为 quotient 变量是双精度浮点数类型。因此,输出结果为 10 / 3.0 = 3.33

总的来说,这段代码演示了当除数和被除数中有一个是小数时,运算结果也是小数,并且是 double 类型的小数。

运算的简写

以下是一段演示对一个变量进行某种运算,然后再把运算结果赋值给变量本身,以及变量本身进行运算的简写形式的C语言代码。

#include <stdio.h>

int main() {
    int a = 10;

    // 常规形式
    a = a + 5;
    printf("a = %d\n", a);

    // 简写形式
    a += 5;
    printf("a = %d\n", a);

    return 0;
}

这段代码的输出结果如下:

a = 15
a = 20

在这段代码中,我们定义了一个整数变量 a,并将其赋值为 10。接着,我们对变量 a 进行加法运算,并将运算结果赋值给变量本身。

在第一个示例中,我们使用常规形式 a = a + 5;,这意味着我们首先要对 a 进行加法运算,并将结果赋值给 a。这行代码的效果等同于 a = 10 + 5;,因此最终 a 的值变为 15。输出结果为 a = 15

在第二个示例中,我们使用了简写形式 a += 5;,这是一种把运算结果赋值给变量本身的简写形式。这行代码的效果等同于 a = a + 5;,因此最终 a 的值变为 20。输出结果为 a = 20

总的来说,这段代码演示了对一个变量进行某种运算,然后再把运算结果赋值给变量本身,以及变量本身进行运算的简写形式。

0%