Board logo

标题: C语言While语句应用 [打印本页]

作者: 苹果也疯狂    时间: 2015-3-7 12:32     标题: C语言While语句应用

所谓循环(Looping),就是重复执行一系列语句。C 提供了三种循环结构,分别为 While, For 和

Do While 。




一、While 循环

While 循环的使用方法为:

While ( Condition )

一条语句

如果 Condition 为真(True),则循环执行“一条语句”;如果 Condition 为假(False),则不执行“一条语句”,并退出循环。C 语言中,0 为假,非零为真。也就是说,如果 Condition 的值为 0,则 Condition 为假;否则,Condition 为真。

While 循环也可以这么用:

While ( Condition )

{

一系列语句

}

如果 Condition 为真(True),则循环执行大括号中的一系列语句;反之,不执行大括号中的一系列语句,并退出循环。

这两种用法的区别是,前者只能循环执行一条语句,而后者却能循环执行大括号中的一系列语句。例如:

Int Main(Void)

{

Int I = 0, J = 0, K = 0;

While ( I < 3 ) /* 当 I 小于 3 为真 */

++I; /* 循环执行 ++I; */

++J; /* 这个 While 循环不作用于 ++J; */

/* 以上语句执行完后,I 的值为 3,J 的值为 1 */

While ( K < I ) /* 当 K 小于 I 为真 */

{

++J; /* 循环执行 ++J; 和 ++K; */

++K;

} /* 这个 While 循环作用于 ++J; 和 ++K; */

/* 以上语句执行完后,J 的值为 4,K 的值为 3 */

Return 0;

}

< 是小于运算符,也就是说,I < 3 检测 I 是否小于 3。如果 I 小于 3,则 I < 3 为真,否则为假。当 I < 3 为真时,循环执行 ++I; ;当 I 自增到 3 时,I < 3 为假,循环中止,转而执行 ++J; 。当 K < I 为真时,循环执行 ++J; 和 ++K; ;当 K 自增到 3 时,K < I 为假(因为 I 的值为 3),循环中止,转而执行 Return 0; 。下图简单描述了 While 循环的结构:







二、复合语句(块)

复合语句(Compound Statement)由大括号及大括号内的一系列语句组成。如:

{

++J;

++K;

}

这就是一个复合语句。复合语句也称之为块(Block)。前面所说的 While 循环的第二种用法,用的就是复合语句。所以,While 循环的用法可以总结为:

While ( Condition )

一条语句/复合语句

其中,Condition 可以是任何表达式。如果 Condition 为真,则执行一次“一条语句/复合语句”,然后再次检测 Condition 的真假性,根据 Condition 的真假性决定是否继续执行“一条语句/复合语句”。当 Condition 为假时,则不执行“一条语句/复合语句”,并退出循环,转而执行后续的语句。

注意,如果 Condition 一开始就为假,则“一条语句/复合语句”一次也不会被执行。如:

Int I = 5;

While ( I < 4 )

I++;

由于 I 一开始就大于 4,所以 I < 4 一开始就为假,I++; 一次也不会被执行。此外,

While ( ++I < 10 )

;

是正确的,因为 ; 是一条完全合法的语句。




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0