#include <stdio.h> int main(){ int i, sum=0; i = 1; //语句① while(i<=100 /*语句②*/ ){ sum+=i; i++; //语句③ } printf("%d\n",sum); return 0; }可以看到,语句①②③被放到了不同的地方,代码结构较为松散。为了让程序更加紧凑,可以使用 for 循环来代替,如下所示:
#include <stdio.h> int main(){ int i, sum=0; for(i=1/*语句①*/; i<=100/*语句②*/; i++/*语句③*/){ sum+=i; } printf("%d\n",sum); return 0; }在 for 循环中,语句①②③被集中到了一起,代码结构一目了然。
for(表达式1; 表达式2; 表达式3){
语句块
}
#include <stdio.h> int main(){ int i, sum=0; for(i=1; i<=100; i++){ sum+=i; } printf("%d\n",sum); return 0; }运行结果:
for(初始化语句; 循环条件; 自增或自减){
语句块
}
;
必须保留)。int i = 1, sum = 0; for( ; i<=100; i++){ sum+=i; }可以看到,将
i=1
移到了 for 循环的外面。for(i=1; ; i++) sum=sum+i;相当于:
i=1; while(1){ sum=sum+i; i++; }所谓死循环,就是循环条件永远成立,循环会一直进行下去,永不结束。死循环对程序的危害很大,一定要避免。
for( i=1; i<=100; ){ sum=sum+i; i++; }
for( ; i<=100 ; ){ sum=sum+i; i++; }相当于:
while(i<=100){ sum=sum+i; i++; }
for( ; ; ) 语句
相当于:while(1) 语句
for( sum=0; i<=100; i++ ) sum=sum+i;
for( sum=0,i=1; i<=100; i++ ) sum=sum+i;或:
for( i=0,j=100; i<=100; i++,j-- ) k=i+j;
for( i=0; (c=getchar())!='\n'; i+=c );又如:
for( ; (c=getchar())!='\n' ; ) printf("%c",c);
本文链接:http://task.lmcjl.com/news/8092.html