Menu
CoddyTech

布尔值

本课属于 Coddy C 学习旅程的“基础知识”单元。第 9 课,共 63 课。

早期版本的 C 没有像其他语言那样的布尔数据类型,所以 C 使用整数表示布尔值。

定义一个整数来表示布尔值:

int isTrue = 1;  // 表示真
int isFalse = 0; // 表示假

在 C 中,任何非零值都被视为“true”,而零被视为“false”。 

在条件中使用这些布尔值:

int age = 25;
int isAdult = (age > 17);

printf("Is adult? %d\n", isAdult);
Output:
Is adult? 1

你可以使用比较运算符来生成布尔结果。例如,>用于检查左侧的值是否大于右侧的值,>=用于检查左侧的值是否大于或等于右侧的值:

int age = 18;
int isAdult = (age >= 18); // 如果 age 大于或等于 18,则为 true

printf("Is adult? %d\n", isAdult);
Output:
Is adult? 1

从 C99 开始,你可以引入 <stdbool.h> 头文件来使用布尔类型:

#include <stdbool.h>

bool isTrue = true;   // 现在使用真正的布尔类型
bool isFalse = false; // 使用预定义常量

不过,在接下来的学习过程中,你会进一步了解布尔值的用法。

challenge icon

挑战

简单

将 age 变量设为 16。然后,创建一个程序,检查这个人是否达到驾驶年龄(年龄为 18 岁或以上)。
将结果(false 对应 0,true 对应 1)存储在名为 canDrive 的变量中,并打印年龄和结果。

亲手试试

    // 在这里写代码:把 0 替换成题目要求的年龄
    int age = 0;

    // 在这里写代码:把 0 替换成判断这个人是否达到驾驶年龄的比较表达式
    int canDrive = 0;
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

基础知识中的所有课

自己练习: C 在线编译器