在使用while语句时要谨记的一点是,只有位于判断条件后的那个语句才是循环的部分。例如:
1 #include<stdio.h>
2 int main()
3 {
4 int n=0;
5 while(n<3)
6 printf("n is %d\n",n);
7 n++;
8 printf("that's all this program does\n");
9 return 0;
10 }
这个程序的输出结果是:
n is 0
n is 0
n is 0
n is 0
n is 0等等
n++并没有与前面的打印语句放在一个花括号中,这样就只有紧跟在判断条件后的打印语句成了循环部分,变量n永远得不到更新。这是一个无限循环的例子
因此循环在判断条件之后的第一个简单或复合语句就结束
单独的分号代表空语句(C语言中)列如
1 #include<stdio.h>
2 int main()
3 {
4 int n=0;
5 while(n++ < 3);
6 printf("n is %d\n",n);
7 printf("that's all this program\n");
8 return 0;
9 }
这个程序输出:
n is 4
that's all this program 分号的使用
比较大小:使用关系运算符和表达式
注意点:1.关系表达式可以用于字符的比较,使用ASCII值,但是不能使用关系运算符比较字符串
2.关系运算符也可用于浮点数,但在浮点数中只能使用<或>
3. != 不等于
4.真假的判断:一个真表达式的值为1,一个假表达式的值为0.
所有的非0值都被判断为真,只有0被判断为假
例如 while(goats!=0)和while(goats)都是只有在goats的值为0时才为0或假。
5 布尔变量:在编程领域,表示真假的变量开始时被称为布尔变量,这样——bool就是布尔变量的c类型名,一个布尔变量只可以具有0或1,如果把布尔变量赋为一个非零的数值,变量就被设定为1,这说明c把任何非零的值都认定为真
关系运算符的优先级
关系运算符的优先级要低于包括+和-在内的算术运算符,但要高于赋值运算符