先说下思路:
再写思路: 2层循环 外层控制打印的行数 里层的2个for一个控制前面的空格递减,一个控制星号递增
#include<iostream>
using namespace std;
void print(int n)
{
int i,j;
for(i=1;i<=n;i=i+2)
{
for(j=n;j>i;j=j-2)
cout<<" ";
for(j=1;j<=i;j++)
cout<<"*"; //每行相差两个*
cout<<endl;
}
}
int main()
{
int n=0;
cin>>n;
print(2*n-1);
return 0;
}