Problem Description
通过本题目的练习可以掌握C++中数组的输入输出方法。
从键盘输入1个int型数据N,根据该数据,输出一个用组成的菱形,这个菱形中最多一行的的个数是所输入的整数N。
注意:第N行第一个*号前有一个空格。
Input
一个整数N,表示最多的一行 * 的个数。
Output
输出一个由*组成的菱形。
Example Input
5
Example Output
*
* *
* * *
* * * *
* * * * *
* * * *
* * *
* *
*
找规律:分别找空格的规律、*个数的规律
#include <iostream>
using namespace std;
int main()
{
int n;
cin>>n;
for(int i=1; i<=n; i++)//第i层
{
for(int j=1;j<=n+1-i;j++)//有几个空格
cout<<" ";
for(int j=1; j<=i-1; j++)//i层i个*号时,只有i-1个*后面有空格
{
cout<<"*"<<" ";
}
cout<<"*"<<endl;//每层的最后一个*号后面是一个换行
}
for(int i=n-1;i>=1;i--)
{
for(int j=n+1-i;j>=1;j--)
cout<<" ";
for(int j=i-1;j>=1;j--)
cout<<"*"<<" ";
cout<<"*"<<endl;
}
return 0;
}