lbj学习日记 03 循环和选择结构的刷题心得

ps:本贴为小白学习日记,基础到地下室,大神勿喷
所刷题目都是来源于网络,本人尝试给出自己的解答来加深对于选择和循环结构的理解。

01 输出一个99的*号方阵

#include <iostream>

using namespace std;

int main()
{
    //输出一个9 9的*号方阵
    for(int i=0;i<=8;i++)
    {
        for(int j=0;j<=8;j++)
        {
            cout<<"*";
        }
        cout<<"\n";
    }
    return 0;
}

02 星号输出

#include <iostream>

using namespace std;

int main()
{
  /*  *
      **
      ***
      ***
      ***
      ***               */
    for(int i=0;i<=5;i++)
    {
        for(int j=0;j<=2;j++)
        {
           if(i>=j)
            {
                cout<<"*";
            }

        }
        cout<<endl;
    }
    return 0;
}

#include <iostream>

using namespace std;

int main()
{
  /*  ***
      **
      * 

           */
    for(int i=0;i<=5;i++)
    {
        for(int j=0;j<=2;j++)
        {
           if(i<=j)
            {
                cout<<"*";
            }

        }
        cout<<endl;
    }
    return 0;
}

#include <iostream>

using namespace std;

int main()
{
    /*输出***
           **
            *   */
    for(int i=0;i<=2;i++)
    {
        for(int j=0;j<=2;j++)
        {
            if(i<=j)
            {
                cout<<"*";
            }
            else
            {
                cout<<" ";
            }
        }
        cout<<endl;
    }
    return 0;
}

#include <iostream>

using namespace std;

int main()
{
    //用*输出一个等腰三角形
    /*
        *
       ***
      *****
     *******
    *********
    */
    for(int i=1;i<=5;i++)
    {
        for(int j=1;j<=9;j++)
        {
            if(i+j<6||j-i>4)
            {
                cout<<" ";
            }
            else
            {
                cout<<"*";
            }

        }
        cout<<endl;
    }
    return 0;
}

#include <iostream>

using namespace std;

int main()
{
    //输出一个倒三角形
     /*
     *******
      *****
       ***
        *
    */
    for(int i=1;i<=4;i++)
    {
        for(int j=1;j<=7;j++)
        {
            if( i>j||i+j>8)
            {
                cout<<" ";
            }
            else
            {
                cout<<"*";
            }
        }
        cout<<"\n";
    }
    return 0;
}

#include <iostream>

using namespace std;

int main()
{
    /*
        *
       ***
      *****
     *******
    *********
     *******
      *****
       ***
        *
    */
    for(int i=-4;i<=4;i++)
    {
        for(int j=-4;j<=4;j++)
        {
            if(i+j<-4||j-i>4||i-j>4||i+j>4)
            {
                cout<<"o";//将0改成空格就行了
            }
            else
            {
                cout<<"*";
            }
        }
        cout<<endl;
    }
    return 0;
}

#include <iostream>

using namespace std;

int main()
{
    //打印九九乘法表
   /*
   1*1=1
   2*1=2   2*2=4
   3*1=3   3*2=6   3*3=9
   4*1=4   4*2=8   4*3=12  4*4=16
   5*1=5   5*2=10  5*3=15  5*4=20  5*5=25
   6*1=6   6*2=12  6*3=18  6*4=24  6*5=30  6*6=36
   7*1=7   7*2=14  7*3=21  7*4=28  7*5=35  7*6=42  7*7=49
   8*1=8   8*2=16  8*3=24  8*4=32  8*5=40  8*6=48  8*7=56  8*8=64
   9*1=9   9*2=18  9*3=27  9*4=36  9*5=45  9*6=54  9*7=63  9*8=72  9*9=81
   */
    for(int i=1;i<=9;i++)
    {
        for(int j=1;j<=9;j++)
        {
            if(i>=j)
            {
            cout<<i<<"*"<<j<<"="<<i*j<<"\t";//加入水平制表符让格式更加工整
            }
        }
        cout<<endl;
    }
    return 0;
}

难点突破:给定数字输出金字塔

#include <iostream>

using namespace std;

int main()
{
    /*
样例输入   5
样例输出

    *
   ***
  *****
 *******
*********

    */
    //由题意可知,在收到数字n后生成n行2n-1列
    int n=0;
    cin>>n;
    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=2*n-1;j++)
        {
            if(i+j<=n||j-i>n-1)
            {
                cout<<"o";//o换成空格就行了
            }
            else
            {
                cout<<"*";
            }
        }
        cout<<endl;
    }
    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

山海经密码锁

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值