# C 程序：检查数字是偶数还是奇数

> 原文： [https://www.programiz.com/c-programming/examples/even-odd](https://www.programiz.com/c-programming/examples/even-odd)

#### 在此示例中，您将学习检查用户输入的数字是偶数还是奇数。

要理解此示例，您应该了解以下 [C 编程](/c-programming "C tutorial")主题：

*   [C 编程运算符](/c-programming/c-operators)
*   [C `if...else`语句](/c-programming/c-if-else-statement)

* * *

偶数是可以被 2 整除的整数。例如：0、8、-24

奇数是不能被 2 整除的整数。例如：1、7、-11、15

* * *

## 检查偶数或奇数的程序

```c
#include <stdio.h>
int main() {
    int num;
    printf("Enter an integer: ");
    scanf("%d", &num);

    // True if num is perfectly divisible by 2
    if(num % 2 == 0)
        printf("%d is even.", num);
    else
        printf("%d is odd.", num);

    return 0;
} 
```

**输出**

```c
Enter an integer: -7
-7 is odd. 
```

在程序中，用户输入的整数存储在变量`num`中。

然后，使用模数`%`运算符检查`num`是否能被`2`完全整除。

如果该数字可以被`2`完全整除，则测试表达式`number%2 == 0`的计算结果为`1`（真）。 这意味着数字是偶数。

但是，如果测试表达式的计算结果为`0`（假），则该数字为奇数。

* * *

## 使用三元运算符检查奇数或偶数的程序

```c
#include <stdio.h>
int main() {
    int num;
    printf("Enter an integer: ");
    scanf("%d", &num);

    (num % 2 == 0) ? printf("%d is even.", num) : printf("%d is odd.", num);
    return 0;
} 
```

**输出**

```c
Enter an integer: 33
33 is odd. 
```

在上面的程序中，我们使用了三元运算符`?:`而不是`if...else`语句。