21xrx.com
2025-04-02 18:25:30 Wednesday
文章检索 我的文章 写文章
C++编程:使用“@”键盘输入输出菱形
2023-06-26 21:12:50 深夜i     12     0
C++ @键盘 输入 输出 菱形

在C++编程中,我们可以使用一些简单的语句和循环结构来实现输入和输出各种图形。本文将介绍如何使用“@”键盘输入输出菱形。

首先,我们需要使用for循环语句来创建菱形的行数。这个菱形共有7行,因此可以使用以下代码:

for(int i=1; i<=7; i++)

接下来,我们需要使用if-else语句来控制每一行的内容和样式。在菱形中,每一行的星号数量都是不同的,因此使用一些计算公式来控制每一行的数量是非常必要的。具体代码如下:

if(i<=4)
{
  for(int j=1; j<=8; j++)
  {
    if(j>=5-i && j<=4+i)
    
      cout<<"@";
    
    else
    
      cout<<" ";
    
  }
}
else
{
  for(int j=1; j<=8; j++)
  {
    if(j>=i-3 && j<=12-i)
    
      cout<<"@";
    
    else
    
      cout<<" ";
    
  }
}

上述代码中,if语句用于判断当前行是否在菱形的上半部分(前四行),如果是,那么使用特定的计算公式来输出“@”;如果不是,那么使用另一组计算公式输出“@”。其中,这两组计算公式分别为:

上半部分计算公式:星号数量为2 x i - 1,空格数量为7 - 2 x i。

下半部分计算公式:星号数量为14 - 2 x i,空格数量为1 + 2 x i - 7。

最后,在每一行输出结束后,需要添加一个换行符来确保下一行能够正常输出。因此,在循环结束后,代码还需要添加一行换行语句:

cout<<endl;

综上所述,我们可以得到完整代码如下:

#include <iostream>
using namespace std;
int main()
{
  for(int i=1; i<=7; i++)
  {
    if(i<=4)
    {
      for(int j=1; j<=8; j++)
      {
        if(j>=5-i && j<=4+i)
        
          cout<<"@";
        
        else
        
          cout<<" ";
        
      }
    }
    else
    {
      for(int j=1; j<=8; j++)
      {
        if(j>=i-3 && j<=12-i)
        
          cout<<"@";
        
        else
        
          cout<<" ";
        
      }
    }
    cout<<endl;
  }
  return 0;
}

运行上述代码,即可在屏幕上输出一个漂亮的“@”菱形。这里提醒大家,语法和格式的正确性对于C++编程非常重要,有时一个小小的错误可能导致程序无法正常运行。因此,在编写代码时一定要加强细心和耐心,仔细检查语法和细节,避免出现错误和问题。

  
  

评论区

请求出错了