我是靠谱客的博主 热情皮卡丘,最近开发中收集的这篇文章主要介绍循环嵌套,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

   多层循环执行的过程是外层循环每执行一次,内层循环就完整的执行一遍。
#include<iostream.h>
void main()
{
    int i,j,k;
    cout<<"i"<<"j"<<"k"<<endl;
    for(i=0;i<2;i++)
        for(j=0;j<2;j++)
            for(k=0;k<2;k++)
                cout<<i<<j<<k<<endl;
}

这是一个三层循环,最外层循环每定一个i值时,第二层循环j从0~1执行两次循环;第二层循环的循环变量j每定一个值,第三层循环的k从0~1执行两次循环,第三层的循环体cout<<i<<j<<k;共执行了2*2*2=8次循环。通过运行结果,可以非常清楚的了解循环过程。

例题一、打印乘法口诀表。

#include<iostream.h>
void main()
{
    int i,j,k;
    for(i=1;i<=9;i++)
    {
        for(j=1;j<=i;j++)
            cout<<j<<"*"<<i<<"="<<i*j<<" ";
                cout<<endl;
                }

}

用i控制行,用j控制列,需要两层循环。
例题二、两个乒乓球队比赛,各出3人,甲队为a,b,c三人,乙队为x,y,z三人,有人向队员打听比赛名单,a说他不和x比,c说他不和x、z比,请找出三对比赛选手的名单。
用穷举法。

#include<iostream.h>
void main()
{
    char i,j,k;
    for(i='x';i<='z';i++)
        for(j='x';j<='z';j++)
        if(i!=j)//a和b的对手不能是同一个人
            for(k='x';k<='z';k++)
                if(i!=k&&j!=k)//a,b,c的对手不能同一个人
                    if(i!='x'&&k!='x'&&k!='z')
                    //a的对手不是x,c的对手不是x和z
                        cout<<"顺序是"<<"a--"<<i<<" "<<"b--"<<j<<" "<<"c--"<<k;
}

i 是a的对手,j是b的对手,k是c的对手。
循环中的中途退出
break语句
1、break语句用在switch中时,使程序跳出switch而执行switch后的程序
2、break语句用在for、do-while和while中,可使程序终止循环而执行循环后的语句。通常break与if配合,即满足条件时便跳出循环。
例题三、输入一个数判断是否为素数。
素数是只能被1和自身整除的数。

#include<iostream.h>
void main()
{
    int n;
    cin>>n;
    int i=2;
    for(;i<n;i++)

        if(n%i==0)
            break;
        if(i>=n)
            cout<<"是素数";
        else
            cout<<"不是素数";

1、break语句不能用于循环语句或者switch语句之外任何语句中。
2、在多层循环中一个break只能跳出一层,而跳到最外层需要多个地方设置break。

continue语句
continue语句是跳过循环体中剩余语句而强行执行下一次循环,continue语句只用于循环体中,通常与if配合。
continue和break区别是,continue只结束本次循环,继续执行下一次循环,而break则是结束整个循环。
例题四、输出能被3和7整除的三位整数。

#include<iostream.h>
void main()
{
    int i;
    int count=0;
    for(i=100;i<1000;i++)
    {
        if(i%3!=0) continue;
        if(i%7!=0) continue;
        count++;
        cout<<i<<" ";
        if(count%5==0)
            cout<<endl;
    }
}

continue对for循环,跳过循环体其余语句,转向循环增量表达式3的计算。对do-while和while循环,跳过循环体其余语句,转向循环条件的判定,继续判定是否循环。
循环嵌套时,break和continue只影响包含他们的最内层循环,与外层循环无关。

最后

以上就是热情皮卡丘为你收集整理的循环嵌套的全部内容,希望文章能够帮你解决循环嵌套所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(50)

评论列表共有 0 条评论

立即
投稿
返回
顶部