这是一个打印菱形图案的 C++ 程序。
通常,要打印菱形图案,我们需要打印两个三角形。一个向上,一个向下,只需打印第一个三角形,然后以第一个三角形的相反方向打印第二个三角形。
要在 C++ 编程中打印星形菱形图案,请让用户输入行数。如果用户输入 8 作为菱形的行大小,那么它的上三角部分将扩展到 8 行,而它的下三角部分将扩展到 7 (比行数少一行) 行。
将输入的数字存储到一个变量 rownum 中。将另一个变量 space 设置为 rownum-1。我们使用三个 for 循环来创建每个三角形,即菱形的上三角形和下三角形。
考虑一个 8 的例子。
rownum = 8;space = 7;
for 循环开始执行 i = 0 且条件 i <= 8 评估为真。
for(i=1; i<=rowNum; i++)
控制流进入循环,现在 j = 1 且条件 j <= 7 评估为真。
for(j=1; j<=space; j++)
循环内部打印一个空格。
cout<<" ";
每次退出此循环后,递减 space 的值,以便下一行或下一行打印的空格少一个。
space--;
使用第三个 for 循环来打印星号。在第一次执行时,j=1 且条件 j<=(2*i-1) 或 j<=(2*1-1) 或 1<=(1) 或 1<=1 评估为真,因此程序流进入此循环并打印一个星号 (*)。
for(j=1; j<=(2*i-1); j++)
cout<<"*";
使用 endl,下一项从新行开始。
cout<
此过程一直持续到条件评估为假。通过这种方式,打印出上菱形的星形图案,同样,下菱形也得到打印。
步骤 1: 调用头文件 iostream。
步骤 2:使用命名空间 std。
步骤 3:打开整数类型的主函数;int main()。
步骤 4:声明整数类型变量 rownum, space, I, j;
步骤 5:要求用户输入行数。
步骤 6:将数字获取到变量 rownum 中;
步骤 7:将变量 space 的值设置为 rownum – 1;
步骤 8:创建一个对应于行的 for 循环。将 i 的值初始化为 0;检查条件 i <= rownum。如果为真,则转到步骤 9;
步骤 9: 创建一个对应于空格的 for 循环
步骤 10:创建另一个对应于打印星号的 for 循环
在第一次执行时,j = 1 并检查条件 j<=(2*i-1) 或 j<=(2*1-1) 或 1<=(1) 或 1<=1。如果为真,则打印一个星号;
将 j 的值加 1;
步骤 11:设置 space = 1;
步骤 12:重复步骤 8、9 和 10;
步骤 13:退出。
#include<iostream>
using namespace std;
int main()
{
int i, j, rownum, space;
cout<<"Enter the Number of Rows: ";
cin>>rownum;
space = rownum-1;
for(i=1; i<=rownum; i++)
{
for(j=1; j<=space; j++)
cout<<" ";
space--;
for(j=1; j<=(2*i-1); j++)
cout<<"*";
cout<<endl;
}
space = 1;
for(i=1; i<=(rownum-1); i++)
{
for(j=1; j<=space; j++)
cout<<" ";
space++;
for(j=1; j<=(2*(rownum-i)-1); j++)
cout<<"*";
cout<<endl;
}
cout<<endl;
return 0;
}
Enter the Number of Rows: 8
*
***
*****
*******
*********
***********
*************
***************
*************
***********
*********
*******
*****
***
*