C语言for循环中的三个表达式
发布时间:2023-05-12 12:30:54 所属栏目:语言 来源:
导读:for 循环中的“表达式1(初始化条件)”、“表达式2(循环条件)”和“表达式3(自增或自减)”都是可选项,都可以省略(但分号;必须保留)。
1) 修改“从1加到100的和”的
1) 修改“从1加到100的和”的
|
for 循环中的“表达式1(初始化条件)”、“表达式2(循环条件)”和“表达式3(自增或自减)”都是可选项,都可以省略(但分号;必须保留)。 1) 修改“从1加到100的和”的代码,省略“表达式1(初始化条件)”: int i = 1, sum = 0; for( ; i<=100; i++){ sum+=i; } 可以看到,将i=1移到了 for 循环的外面。 2) 省略了“表达式2(循环条件)”,如果不做其它处理就会成为死循环。例如: for(i=1; ; i++) sum=sum+i; 相当于: i=1; while(1){ sum=sum+i; i++; } 所谓死循环,就是循环条件永远成立,循环会一直进行下去,永不结束。死循环对程序的危害很大,一定要避免。 3) 省略了“表达式3(自增或自减)”,就不会修改“表达式2(循环条件)”中的变量,这时可在循环体中加入修改变量的语句。例如: for( i=1; i<=100; ){ sum=sum+i; i++; } 4) 省略了“表达式1(初始化语句)”和“表达式3(自增或自减)”。例如: for( ; i<=100 ; ){ sum=sum+i; i++; } 相当于: while(i<=100){ sum=sum+i; i++; } 5) 3个表达式可以同时省略。例如: for( ; ; ) 语句 相当于: while(1) 语句 6) “表达式1”可以是初始化语句,也可以是其他语句。例如: for( sum=0; i<=100; i++ ) sum=sum+i; 7) “表达式1”和“表达式3”可以是一个简单表达式也可以是逗号表达式。 for( sum=0,i=1; i<=100; i++ ) sum=sum+i; 或: for( i=0,j=100; i<=100; i++,j-- ) k=i+j; 8) “表达式2”一般是关系表达式或逻辑表达式,但也可是数值或字符,只要其值非零,就执行循环体。例如: for( i=0; (c=getchar())!='\n'; i+=c ); 又如: 纯文本复制 for( ; (c=getchar())!='\n' ; ) printf("%c",c); (编辑:汽车网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
