C语言教程:运算符、表达式与程序设计基础

需积分: 7 0 下载量 122 浏览量 更新于2024-08-20 收藏 1MB PPT 举报
"这篇教程主要涉及C语言中的运算符和表达式,以及程序设计的基础概念。" 在C语言中,运算符和表达式是构建程序的重要组成部分。表达式是由数据和运算符按照C语言的语法规则组合而成的式子。例如,`c = -a - b` 是一个赋值表达式,它将 `-a - b` 的结果赋值给变量 `c`。在C语言中,运算符的优先级和结合性决定了表达式的求值顺序。例如,`a = a - 1` 按照从左到右的顺序执行减法操作。 表达式如 `a = b > c > 2` 具有链式比较的特点,实际上等价于 `b > c`,因为比较运算符返回的是布尔值,而 `a` 被赋值为 `0` 或 `1`。对于浮点数的近似相等判断,可以使用 `fabs(x - y) < 1e-5` 来判断两个浮点数 `x` 和 `y` 是否几乎相等。 `a = 2; c = (b = a++, a + 2);` 这个例子展示了自增运算符 `++` 的使用,以及复合赋值运算符的组合。在这里,`b` 被赋值为 `2`,`a` 自增为 `3`,然后 `a + 2` 的结果赋值给 `c`,所以 `c` 最终等于 `5`。 三目运算符 `max = (a > b)? a : b;` 可以理解为一个简洁的条件语句,相当于 `if (a > b) max = a; else max = b;` 它用于计算两个值中的较大者。 `sizeof` 运算符用于获取数据类型的字节大小,如 `sizeof(char)` 返回 `1`,表示字符类型在内存中占用1个字节。 C语言程序通常由多个源程序文件组成,每个文件可能包含函数定义和声明。程序执行从主函数 `main()` 开始,例如提供的代码示例展示了如何输入两个整数并使用函数 `max` 来找出较大者。程序的结构包括内部数据定义、语句序列以及函数的定义和调用。 数据类型在C语言中至关重要,包括基本类型(如整型、实型、字符型、枚举类型)、构造类型(如数组、结构体、共用体)和指针类型等。存储类型如自动类型、静态类型、寄存器类型和外部类型决定了变量的生命周期和作用域。 在C语言中,数据类型的选择和使用应确保数据范围的正确性,避免溢出。例如,整型变量(如 `int`、`short`、`long`)和浮点型变量(如 `float`、`double`)都有其特定的数值范围。如果超出这些范围,可能会导致数据的损失或错误。 Wirth 的著名观点 "程序=数据结构+算法" 强调了数据结构和算法在程序设计中的核心地位。在C语言中,通过各种数据类型和运算符,可以构建复杂的数据结构和高效算法,实现功能丰富的程序。