while的用法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
while语句的一般形式为:
while(表达式) 语句
其中表达式是循环条件,语句为循环体。
while语句的语义是:计算表达式的值,当值为真(非0)时,执行循环体语句。其执行过程可用下图表示。
【例6-2】用while语句计算从1加到100的值。用传统流程图和N-S结构流程图表示算
法,见图:
1.#include
2.int main(void){
3.int i,sum=0;
4. i=1;
5.while(i<=100){
6. sum=sum+i;
7. i++;
8.}
9.printf("%d\n",sum);
10.return0;
11.}
【例6-3】统计从键盘输入一行字符的个数。
1.#include
2.int main(void){
3.int n=0;
4.printf("input a string:\n");
5.while(getchar()!='\n') n++;
6.printf("%d",n);
7.return0;
8.}
本例程序中的循环条件为getchar()!='\n',其意义是,,只要从键盘输入的字符不是回车就继续循环。循环体n++完成对输入字符个数计数。从而程序实现了对输入一行字符的字符个数计数。
使用while语句应注意以下两点。
1) while语句中的表达式一般是关系表达或逻辑表达式,只要表达式的值为真(非0)即可
继续循环。
1.#include
2.int main(void){
3.int a=0,n;
4.printf("\n input n: ");
5.scanf("%d",&n);
6.while(n--)printf("%d ",a++*2);
7.return0;
8.}
本例程序将执行n次循环,每执行一次,n值减1。循环体输出表达式a++*2的值。该表达式等效于(a*2; a++)。
2) 循环体如包括有一个以上的语句,则必须用{}括起来,组成复合语句。