21xrx.com
2024-12-22 16:12:02 Sunday
登录
文章检索 我的文章 写文章
C++空心图形输出方法讲解
2023-07-12 15:31:47 深夜i     --     --
C++ 空心图形 输出方法 讲解

C++是一种常用的编程语言,它具有灵活性、可移植性和高效性等多种优点。在C++编程中,空心图形的输出是经常用到的操作之一。下面我们来介绍一下C++中空心图形输出的方法。

一、空心矩形的输出方法

C++中空心矩形的输出方法如下:


#include <iostream>

using namespace std;

int main()

{

  int i, j, n;

  cout<<"请输入矩形的边长:";

  cin>>n;

  for (i=1; i<=n; i++)

  {

    for (j=1; j<=n; j++)

    {

      if (i==1 || i==n || j==1 || j==n)

      {

        cout<<"*";

      }

      else

      

        cout<<" ";

      

    }

    cout<<endl;

  }

  return 0;

}

在此代码中,我们使用了两层循环,外层循环用于控制行数,内层循环用于控制列数。当行数或列数为边界时,输出“*”,否则输出空格。

二、空心三角形的输出方法

C++中空心三角形的输出方法如下:


#include <iostream>

using namespace std;

int main()

{

  int i,j,n;

  cout<<"请输入三角形的行数:";

  cin>>n;

  for (i=1;i<=n;i++)

  {

    for (j=1;j<=(n-i);j++)

    

      cout<<" ";

    

    for (j=1;j<=(2*i-1);j++)

    {

      if (i==n||j==1||j==(2*i-1))

      {

        cout<<"*";

      }

      else

      

        cout<<" ";

      

    }

    cout<<endl;

  }

  return 0;

}

在此代码中,我们同样使用了两层循环,第一层循环控制行数,第二层循环用于输出每行的字符。当i等于n或j等于1或j等于2i-1时,输出“*”,否则输出空格。

三、空心菱形的输出方法

C++中空心菱形的输出方法如下:


#include <iostream>

using namespace std;

int main()

{

  int i, j, n;

  cout<<"请输入菱形的边长:";

  cin>>n;

  for (i=1; i<=n; i++)

  {

    for (j=n; j>i; j--)

    

      cout<<" ";

    

    for (j=1; j<=(2*i-1); j++)

    {

      if (i==1 || j==1 || j==(2*i-1) || i==n)

      {

        cout<<"*";

      }

      else

      

        cout<<" ";

      

    }

    cout<<endl;

  }

  for (i=n-1; i>=1; i--)

  {

    for (j=1; j<=(n-i); j++)

    

      cout<<" ";

    

    for (j=1; j<=(2*i-1); j++)

    {

      if (i==1 || j==1 || j==(2*i-1) || i==n)

      {

        cout<<"*";

      }

      else

      

        cout<<" ";

      

    }

    cout<<endl;

  }

  return 0;

}

在此代码中,我们使用了两个循环来分别输出正中和下半部分的空心菱形。在每一层时,我们先输出一定数量的空格,然后在判断是否需要输出“*”或空格。

总之,在C++中实现空心图形输出需要用到循环和条件判断,只要理解了基本原理,就可以举一反三,实现更加丰富多样的效果。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复