题目描述
打印n阶实心菱形
输入描述输入一个整数n,n<=10
输出描述输出n阶实心菱形,占2*n-1行
样例输入3样例输出
* *** ***** *** *
#include <iostream> #include <cmath> using namespace std; const int MAX=10; int main() { char star[19][19]; int n,a,b; cin>>n; a=b=n-1; for(int i=0;i<n-1;i++) { for(int j=0;j<2*n-1;j++) { if(j>=a && j<=b) star[i][j]='*'; else star[i][j]=' '; } a--;b++; } for(int i=n-1;i<2*n-1;i++) { for(int j=0;j<2*n-1;j++) { if(j>=a && j<=b) star[i][j]='*'; else star[i][j]=' '; } a++;b--; } for(int i=0;i<2*n-1;i++) { for(int j=0;j<2*n-1;j++) { cout<<star[i][j]; } cout<<endl; } return 0; }