分析问题
分步解决
1 按规律输出开关
2 按规律输出左侧星号
3 按规律输出右侧星号
注意,换行的位置是在行数发生变化时产生,其他均由嵌套循环实现
建立模型
输入一个数字n
从1至n开始循环
//三段式 第一段 左侧空格 第二段 中间图形 第三段 右侧空格
循环输出星号,变化规律为n-i (例如n=3,i=1,第1行就输出两个空格)
循环输出图形,变化规律为2*i-1
循环输出星号,变化规律为n-i
换行
编写代码
#include <bits/stdc++.h>
using namespace std;
int main(){
int n;
cin>>n;
for(int i=1;i<=n;i++){
//打印空格
for(int j=1;j<=n-i;j++){
cout<<"*";
}
// 打印形状
for(int k=1;k<=2*i-1;k++){
cout<<"@";
}
//打印空格
for(int j=1;j<=n-i;j++){
cout<<"*";
}
cout<<"\n";
}
return 0;
}