zoukankan      html  css  js  c++  java
  • C语言 第六章 多重循环

    一、循环输入

    复制代码
    #include "stdio.h"
    void main()
    {
        char c;
        do
        {
            printf("我告诉你1+1=2
    ");
            printf("你相信吗?(y/n)");
            c=getchar();
            fflush(stdin);
        }while(c=='n');
    }
    复制代码

    二、输入行与列显示矩形

    复制代码
    #include "stdio.h"
    void main()
    {
       int row,col,i,j;
       char c;
       
       do{
           printf("行:");
           scanf("%d",&row);
           fflush(stdin);
           
           printf("列:");
           scanf("%d",&col);
           fflush(stdin);
           
           for(i=1;i<=row;i++)
           {
                   for(j=1;j<=col;j++)
                   {
                       printf("*");
                   }
                   printf("
    ");
           }
            printf("是否继续?(y/n)");
            c=getchar();
            fflush(stdin);
       }while(c=='y');
        
    }
    复制代码

    三、1-10之间的阶乘

    1!+2!+3!

    1+(1*2)+(1*2*3)

    复制代码
    #include "stdio.h"
    void main()
    {
        int i,j,n,cnt,sum=0;
       
        for(j=1;j<=10;j++)
        {
            cnt=1;
            for(i=1;i<=j;i++)
            {
                cnt=cnt*i;
                printf("%d x ",i);
            }
            sum+=cnt;
            printf("=%d
    ",cnt);
        }
        printf("%d",sum);
    }
    复制代码

    四、买苹果

    复制代码
    #include "stdio.h"
    void main()
    {
        //总苹果数x0.8/天数=每天花的钱
        int n,cnt=0,day=0; //表示当天买的苹果数
        for(n=2;n<=100;n=n*2,day++)
        {
            cnt=cnt+n;  //累加每天的苹果数
            printf("%d %d
    ",n,cnt);
        }
        
        printf("%.2f",(cnt*0.8)/day);
    }
    复制代码

    五、课后练习吃饭吃菜

    复制代码
    #include "stdio.h"
    void main()
    {
        int i,j;
        for(i=1;i<=10;i++)
        {
            printf("
    吃一口饭
    ");
            for(j=1;j<=3;j++)
            {
                printf("吃菜	");
            }
        }
    }
    复制代码

    六、分解质因数

    复制代码
    /* Note:Your choice is C IDE */
    #include "stdio.h"
    void main()
    {
        int i,n;
        scanf("%d",&n);  //输入
        for(i=2;i<=n;i++)  //假定i-n之间的所有数都是n的质因数
        {
            if(n%i==0)  //是否整除
            {
                printf("%d 	",i);
                n=n/i;
                i--;  //为了避免跳过多个相同因子将i--
            }
            //n=28 14 7 1
            //i=2 1 2 1 2 3 4  5 6 7 6 7 8
        }
        //2 2 7
    }
    复制代码

    七、101-200间的素数,P136

    复制代码
    /* Note:Your choice is C IDE */
    #include "stdio.h"
    void main()
    {
        //判断一个数是否是素数
        int n=101,leap,i,cnt=0;
        
        while(n<=200)  //外重循环用于准备数
        {
            leap=1;  //假定n就是素数
            for(i=2;i<n/2;i++)
            {
                if(n%i==0)  //只要在2-n之间有一个数被整除
                {
                    leap=0;  //标记n不是素数
                    break;  //结束内重循环
                }
            }
            
            if(leap)
            {
                cnt++;
                printf("%d  ",n);
                if(cnt%10==0) printf("
    ");   //当素数个数是10的倍数时换行 
            }
            n++;
        }
        
        printf("
    101-200之间共有%d个素数",cnt);
        
        
    }
    复制代码

    八、乒乓球比赛题 P140

    复制代码
    #include "stdio.h"
    void main()
    {
        int i,j;
        for(i='a';i<='c';i++)
        {
            for(j='x';j<='z';j++)
            {
                if(i=='a'&&j=='x'||(i=='c'&&(j=='x'||j=='z'))) continue;
                printf("%c VS %c 
    ",i,j);
            }
        }
    }
    复制代码

    复制代码
    #include "stdio.h"
    void main()
    {
        int i,j,k=0,flag=0,n=0;
        char a[]="abc";
        char b[]="xyz";
        char c[3];
        
        for(i=2;i>=0;i--)
        {
            for(j=0;j<=2;j++)
            {
                if(a[i]=='a'&&b[j]=='x'||(a[i]=='c'&&(b[j]=='x'||b[j]=='z'))) continue;
                
                //如果数组中已存在则不行
                flag=0;
                for(k=0;k<3;k++)
                {
                    if(c[k]==b[j]){flag=1;break;};
                }
                
                //存入数组中
                if(flag==0){
                   c[n++]=b[j];
                   break;
                }
            }
        }
        
        for(i=0;i<3;i++)
        {
            printf("%c对%c 	",a[i],c[2-i]);
        }
    }
    复制代码

  • 相关阅读:
    计算公式以及参数数量计算
    sqlmap查找SQL注入漏洞入门
    动态密码卡TOTP算法
    使用windbg分析iis崩溃的一个实例
    windbg加载sos.dll
    wndbg下载与安装
    windbg入门
    IIS崩溃时自动抓取Dump
    net组件转化成COM组件
    dokuwiki安装部署
  • 原文地址:https://www.cnblogs.com/Jansens520/p/6538207.html
Copyright © 2011-2022 走看看