zoukankan      html  css  js  c++  java
  • 循环的嵌套及举例(初学者)

    例:

    #include<stdio.h>
    
    void main()
    {
        int i,j,k;
        printf("i j k
    ");
        for(i=0;i<2;i++)
            for(j=0;j<2;j++)
                for(k=0;k<2;k++);
        printf("%d%d%d
    ",i,j,k);
    
    }

    问题:输出以下图形:

    *

    **

    ***

    ****

    *****

    ******

    提示:一共6行,每行的‘*’数都与行数相同。

    #include<stdio.h>
    
    void main()
    {
        int n,i;
        for(n=1;n<=6;n++)        //打印行;
        {
            printf("
    ");
            for(i=1;i<=n;i++)     //打印‘*’;
            {
                putchar('*');
            }
        }
    
    }

    四种循环的比较:

    (1)四种循环都可以用来处理同一个问题,一般可以互相代替。但一般不提倡用goto型循环。

    (2)while和do-while循环,只在while后面的括号内指定循环条件,因此为了让循环能正常结束,循环体中应包括使循环趋于结束的语句(如i++或i=i+1)。

    (3)for循环可以在表达式3中包含使循环趋于结束的操作,甚至可以将循环体中的操作全部放在表达式3中。因此for语句功能最强,也最常用。

    (4)用while和do-while循环时,循环变量初始化的操作应在while和do-while语句之前完成,而for语句可以在表达式1中实现循环变量的初始化。

    (5)while循环、do-while循环和for循环,可以用break语句跳出循环,用continue语句结束本次循环。而对goto语句和if语句构成的循环,不能用break语句和continue语句进行控制。

    题目:有1、2、3、4四个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?

    程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去掉不满足条件的排列。

    #include<stdio.h>
    
    void main()
    {
        int i,j,k,n;
        n=0;
        for(i=1;i<5;i++)
        {
            for(k=1;k<5;k++)
            {
                for(j=1;j<5;j++)
                {
                    if(i!=k&&j!=i&&j!=k)
                        n++;
                    if(i!=k&&j!=i&&j!=k)
                        printf("%d%d%d
    ",i,j,k);
                }
            }
        }
        printf("%d",n);
    }
  • 相关阅读:
    webpack打包报错configuration has an unknown property 'mode'
    CSP 201712-4 行车路线(最短路)
    设计模式
    sqlserver 迁移数据
    DataX
    Python 对接WebService
    IOS APP打包流程
    nginxUI
    ROS脚本-下线时判断在线数量进行重拨号
    bash 字符串截取的8种方法
  • 原文地址:https://www.cnblogs.com/lvfengkun/p/10273900.html
Copyright © 2011-2022 走看看