靳润昭C语言教程讲义 2001年2月17日 本例程序中的循环条件为 getchar!=’n’,其意义是,只要从键盘输入的字符不是回 车就继续循环。循环体n+完成对输入字符个数计数。从而程序实现了对输入一行字符的字 符个数计数 使用 while语句应注意以下几点 1) while语句中的表达式一般是关系表达或逻辑表达式,只要表达式的值为真(非0)即可 继续循环, 【例6.4】 mainO( int a=0. n: tf(\n input n:") scanf(%d", &n); printf(%d a++* 本例程序将执行n次循环,每执行一次,n值减1。循环体输出表达式a++凇的值。该 表达式等效于(a*2;a++)。 2)循环体如包括有一个以上的语句,则必须用{括起来,组成复合语句。 64 do-while语句 do-while语句的一般形式为 语句 while(表达式); 这个循环与 while循环的不同在于:它先执行循环中的语句,然后再判断表达式是否为 真,如果为真则继续循环;如果为假,则终止循环。因此,do-whie循环至少要执行一次 循环语句。其执行过程可用下图表示。 盾环体语句 表达式 0 第4页靳润昭 C 语言教程讲义 2001 年 2 月 17 日 第4页 本例程序中的循环条件为 getchar()!='\n',其意义是, 只要从键盘输入的字符不是回 车就继续循环。循环体 n++完成对输入字符个数计数。从而程序实现了对输入一行字符的字 符个数计数。 使用 while 语句应注意以下几点: 1) while 语句中的表达式一般是关系表达或逻辑表达式,只要表达式的值为真(非 0)即可 继续循环。 【例 6.4】 main(){ int a=0,n; printf("\n input n: "); scanf("%d",&n); while (n--) printf("%d ",a++*2); } 本例程序将执行 n 次循环,每执行一次,n 值减 1。循环体输出表达式 a++*2 的值。该 表达式等效于(a*2;a++)。 2) 循环体如包括有一个以上的语句,则必须用{}括起来,组成复合语句。 6.4 do-while 语句 do-while 语句的一般形式为: do 语句 while(表达式); 这个循环与 while 循环的不同在于:它先执行循环中的语句,然后再判断表达式是否为 真, 如果为真则继续循环;如果为假, 则终止循环。因此, do-while 循环至少要执行一次 循环语句。其执行过程可用下图表示