C语言编程基础:运算符、流程控制与数据类型

需积分: 0 0 下载量 22 浏览量 更新于2024-08-03 收藏 953KB DOCX 举报
"孙国豪的C语言笔记包含了C语言中的基本概念、运算符优先级、自增运算、数据类型转换、结构化程序设计的基本结构、条件判断和循环控制等内容。" 在C语言中,变量可以赋值不同的数据类型,如整型(int)、字符型(char)、浮点型(float)等。表达式是程序中的基本计算单位,它们的临时值类型由操作数决定,且运算符有优先级之分。例如,算术运算符的优先级高于关系运算符,而关系运算符又高于逻辑运算符。表达式中的自增运算符(++)有前置和后置两种形式,前置自增会在使用变量之前增加,而后置自增则在使用之后增加。 运算符包括一元、二元和三元运算符,如一元的++、--,二元的+、-、*、/、%,以及三元运算符?(条件表达式)?(真时表达式):(假时表达式)。逻辑运算符包括逻辑与(&&)、逻辑或(||)和逻辑非(!),其中逻辑与运算符具有短路特性,如果前一个操作数能确定结果,就不会再计算第二个操作数。 在关系运算中,大于(>)、小于(<)、小于等于(<=)、大于等于(>=)和等于(==)、不等于(!=)用于比较两个表达式的结果,返回值为0(假)或非0(真)。例如,`i > j`表示i是否大于j。 C语言中的数据类型转换遵循从低到高的自动转换规则,如从char到int,但需要强制转换如`(int)5.2`从高到低如从double到int。表达式的最终类型由操作数的最高类型决定。 程序设计通常采用结构化方法,包括顺序、分支(if-else、if-elseif)和循环(while、for、do-while)三种基本结构。例如,`while(e1)`循环会在条件e1为真时执行循环体`s1`,而`for(e1, e2, e3)`则会在初始化e1后,每次循环前检查e2,循环后执行e3。 `switch`语句提供了一种多分支选择,根据表达式的值匹配相应的`case`标签并执行相应的语句块,`default`用于处理所有其他情况。非整型数据可以用数组来配合switch实现选择。 循环的分析通常涉及判断其是否可扩展或收缩,列出所有可能的情况,然后通过合并同类项找出循环的规律。例如,分析`for`或`while`循环时,可以画出三角形模型来表示循环的次数和执行的动作。 这份笔记详尽地涵盖了C语言的基础知识,对于学习和理解C语言的语法、逻辑和编程思想提供了很好的参考。