C语言拾遗-C语言关键字-for

摘要:除了while循环,C语言中还有 for 循环,它的使用更加灵活,完全可以取代while循环。

for

for 语句的一般形式为:

for (表达式1; 表达式2; 表达式3)
{
    语句;
}

它的执行过程如下图:

for循环流程图

 

C语言for循环中的三个表达式

for 循环中的“表达式1(初始化条件)”、“表达式2(循环条件)”和“表达式3(自增或自减)”都是可选项。这三个表达式,可以都有,也可以都没有,也可以有任意的一项或两项,这就是for的灵活性所在。(但分号;必须保留)

1 修改“从1加到100的和”的代码,省略“表达式1(初始化条件)”

int main()
{
    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);

参考链接

https://zhidao.baidu.com/question/386940114.html
http://c.biancheng.net/view/1811.html
http://c.biancheng.net/view/172.html

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值