for的内嵌for之初体验

#include<stdio.h>

int main()

{

    int m,n;

    for(m=2;m<=100;m++)

    {

        for(j=2;j<=i;j++)

        if(m%n==0)

            break;

        if(m==n)

            printf("%d%t",m);

    }

    printf("\n");

return 0;

}

      以前根据程序来读总以为for()(暂且称为for1)内嵌的for()(称为for2)和for1是一一对应,同步进行的。拿上面的程序为例,错误的认为当for1的m=2时 for2的n也等于2,以此类推,当for1的m等于50时,for2的m也等于50。但是按照此看法来读这个程序会发现根本读不下去。因为在此种情况下m的值永远等于n,当然也无法打印出所有的质数。

       仔细的想了想,觉得这个for和内嵌for之间的关系可以这样理解:for1代表一个集合,for2代表一个集合,就像中学学的映射一样。for1的每个元素都能在for2中找到与之相对应的关系。即for1的每种情况,for2的每种处理方式都会处理一遍。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值