c语⾔while语句⾥if,C语⾔⼊门教程-if语句和while循环
if语句和while循环
C语⾔中,if语句和while循环都会⽤到布尔表达式。下⾯是⼀个使⽤if语句的简单例⼦:
#include
int main()
{int b;printf("输⼊⼀个值:");scanf("%d", &b);if (b < 0)
printf("值为负数n");return 0;}
程序从⽤户读⼊⼀个数字,然后⽤if语句测试这个数字是否⼩于零。如果⼩于零则打印⼀条消息,否则什么也不做。程序中的(b<0)称为布尔表达式。C需要求出此表达式的值才能决定是否打印后⾯的消息。如果布尔表达式的结果是真,那么C将执⾏紧接在if语句后⾯的⼀⾏代码(或花括号中的代码块);如果布尔表达式的结果是假,那么C将跳过紧接在if语句后⾯的代码⾏或代码块。
下⾯是⼀个稍复杂⼀点的例⼦:
#include
int main()
{int b;
printf("输⼊⼀个值:");
scanf("%d", &b);
if (b < 0)
printf("值为负数n");
else if (b == 0)
printf("值为0n");
else
printf("值为正数n");
return 0;}
这个例⼦中的else if和else部分处理了值为零或为正的情况。
下⾯是⼀个更复杂⼀些的布尔表达式:
if ((x==y) && (j>k))
z=1;
else
q=10;
上⾯这个if语句的意思是:“如果变量x和y的值相等,⽽且变量j的值⼤于k的值,那么令变量z的值等于1,否则令变量q的值等于10。”在C程序中,您经常使⽤类似这样的if语句进⾏判断。⼀般⽽⾔,⼤多数判断都很简单,像第⼀个例⼦。但偶尔也会遇到复杂⼀些的情况。
请注意,C使⽤==判断相等,⽽⽤=为变量赋值。&&在C中代表布尔操作符与。
这是C语⾔中的所有的布尔操作符:
等于 ==
⼩于 <
⼤于 >
⼩于等于 <=
⼤于等于 >=
不等于 !=
与 &&
或 ||
⾮ !
您会发现,while声明和if声明使⽤起来⼀样简单。举个例⼦:
while (a < b)
{printf("%dn", a);a = a + 1;}
这会反复运⾏⼤括号中间的两⾏语句,直到a⼤于或等于b。⼤体来说,while声明是这样⼯作的:
C还提供⼀种do-while结构:
do{printf("%dn", a);a = a + 1;}while (a < b);
C中的for循环只不过是while语句的精简写法。例如,您有如下C代码:
x=1;while (x<10)
{……x++; }
您可以⽤for循环改写成下⾯这样:
for(x=1; x<10; x++)
{……}
请注意,while循环实际包括了三个步骤:初始化(x=1)、判断(x<10)和增量(x++)。使⽤for循环可以把三个步骤写在同⼀⾏中,但并不限制三个部分的具体内容。例如,您有如下C代码:while语句简单例子
a=1;
b=6;
while (a < b)
{a++;printf("%dn",a);}
⽤for循环就可以写为:
for (a=1,b=6; a < b; a++,printf("%dn",a));
这样虽然有点不易读懂,但还是允许的。在for循环的初始化和增量(不包括测试)部分,我们可以使⽤多条语句并⽤逗号操作符加以分隔。许多 C 程序员喜欢⽤⼀⾏代码“浓缩”进很多信息。但也有许多⼈认为这样会使代码更加难以理解,所以他们选择分开来写。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论