六.C控制语句:循环
程序注释
==运算符是C的相等运算符,不是赋值运算符。
伪代码:一种用简单的句子表示程序思路的方法,它与计算机语言的形式相应。伪代码有助于设计程序的逻辑。确认无误后,再将伪代码翻译成实际的编程代码。
例:
把sum初始化为0
提示用户输入数据
读取用户输入的数据
当输入的数据为整数时,
输入添加给sum,
提示用户进行输入,
然后读取下一个输入
输入完成后,打印sum的值
- 使用伪代码的好处:把注意力集中在程序的组织和逻辑上,不用再设计程序时还要分心如何用编程语言来表达自己的想法
while语句
每一次循环都被称为一次迭代
即使while语句本身使用符合语句,在语句构成上,它也是一条单独的语句。该语句从while开始执行,到底1个分号结束。在使用了复合语句的情况下,到右花括号结束。缩进只是为了读者方便阅读,不是计算机的要求
例如:
while (n++<3);
测试条件后面单独分号是空语句,在C语言中,单独的分号表示空语句,有时,程序员会故意使用空语句的while语句,因为所有的任务都在测试条件中完成了,不需要再循环体中做什么。
关系运算符
运算符 | 含义 |
---|---|
< | 小于 |
<= | 小于或等于 |
== | 等于 |
>= | 大于或等于 |
> | 大于 |
!= | 不等于 |
注意:比较浮点数时,尽量只使用<和>,因为浮点数的舍入误差会导致逻辑上相等的两数却不相等。例如,3乘以1/3的积是1.0,如果把1/3表示成小数点后六位数字,乘积则是0.999999,不等于1.
什么是真
在C中,表达式一定都有一个值,关系表达式也不例外。一般而言,所有的非零值都视为真,只有0被视为假。
新的_Bool类型
C99新增了_Bool类型,_Bool类型的变量只能储存1(真)或0(假),如果把其他非零值赋给_Bool类型的变量,该变量会被设置为1.这就反映了C把所有的非零值都视为真。
运算符优先级
运算符(优先级从高到低) | 结合律 |
---|---|
() | 从左到右 |
- + ++ -- sizeof | 从右到左 |
* / % | 从左到右 |
+ - | 从左到右 |
< > <= >= | 从左到右 |
== != | 从左到右 |
= | 从右到左 |
不确定循环和计数循环
- 不确定循环:在测试表达式为假之前,预先不知道要执行多少次循环
- 计数循环:在执行之前知道要重复执行多少次
for循环
关键词for后面的圆括号中有3个表达式,分别用两个分号分开,第1个是初始化,第2个是测试条件,第3个是表达式执行更新