我的c语言复习笔记1-说说for循环

注1:这篇文章主要参考了http://www.cnblogs.com/lds85930/archive/2007/07/22/827453.html



1、我们先来看最简单的for循环
    int i;                 //i是变量
    for(i=0;i<5;i++)       //for(表达式 1;表达式 2;表达式 3)语句
               //当for循环内只有一条语句的时候,可以省略{}
    {
    printf("%d",i);    
    }
它的输出结果是01234

它的执行过程如下:
(1)求表达式1
(2)求表达式2
    若其值为真,则执行for循环{}内的语句语句中指定的内嵌语句,然后执行(3)做若为
    若其值为假,则结束循环,转到(5)
(3)求解表达式3
(4)返回(2)继续执行
(5)结束循环,执行for语句以后的语句

在本例的for(i=0;i<5;i++) 中,
i=0;是为循环变量i赋初值
i<5;是循环执行的条件
i++;是循环变量的改变语句

2、在c语言的各种循环语句中,要数for最灵活了。无论是循环次数“已经确定”或“循环次数不确定,我们只知道循环结束条件”的情况,它都能处理。
for语句完全可以代替while语句.
刚刚的for循环可以改写为:
    i=0;
    while(i<5)
    {
        printf("%d",i);
        i++;
    }

显然,用for语句更简单、方便。
3、说明:
for(表达式 1;表达式 2;表达式 3)语句
(1)for语句的一般形式中的"表达式1"可以省略,此时应在for语句之前给循环变量赋初值.注意省略表达式1时,其后的分号不能省略.
比如,刚刚的for循环可以改写为:
    int i=0;                 
    for(;i<5;i++)        
    {
    printf("%d",i);    
    }
(2)如果表达式2省略 即不判断循环条件,循环无终止地循环下去,也就是认为表达式2始终为真.
例如:                
    for(i=0;;i++)        
    {
    printf("%d",i);    
    }
    与
    i=0;
    while(1)
    {
        printf("%d",i);
        i++;
    }
等价;
(3)表达式3也可以省略,但此时程序设计者应另外设法保证循环能正常结束.如:
    for(i=0;i<5;)         
    {
    printf("%d",i);   
    i++;
    }

这个例子的循环增量没有放在表达式3的位置 而是作为循环体的一部分 其效果是一样的.
(4)可以省略表达式1和表达式3,只有表达式2 即只给循环条件.
(5)三个表达式都可以省略,如:
    for(;;)
    printf("爱你!");
相当于
    while(1)
    printf("爱你!");
即不设初值 不判断条件(认为表达式2为真值)循环变量不增值,无终止的执行循环体.
(6)表达式1也可以是设置循环变量初值的赋值表达式,也可以是与循环变量无关的其他表达式.如:
(7)遇到多重循环怎么办?
可以试试打印这样的代码来看规律。
    for(i=1;i<=4;i++)
    {
    printf("\n");
        for(j=1;j<=6;j++)
    {    
            printf("%dhaha%d",i,j);
        printf("\n");
    }
    printf("中间的for循环被执行了一次");
    }


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值