打印菱形图案
本题要求编写程序,打印一个高度为n的、由“*”组成的正菱形图案。
标题输入格式
输入在一行中给出一个正的奇数n。
输出格式
输出由n行星号“*”组成的菱形,如样例所示。每个星号后跟一个空格。
输入样例
1|7
输出样例
*
* * *
* * * * *
* * * * * * *
* * * * *
* * *
*
#include
using namespace std;
int main()
{
int n;
cin >> n;
int xc = n/2, yc = n/2;
for(int i=0; i<n; i++)
{
for(int j=0; j<n; j++)
{
if((abs(i-xc)+abs(j-yc))<=n/2)
cout << '*'; // 曼哈顿距离
else
cout << ' ';
}
cout << endl;
}
return 0;
}
#include
#include
int main()
{
int n;
scanf("%d", &n);
int xc = n / 2, yc = n / 2;
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; j++)
{
if ((abs(i - xc) + abs(j - yc)) <= n / 2)
printf("*"); // 曼哈顿距离
else
printf(" ");
}
printf("\n");
}
return 0;
}
其中abs()函数是取绝对值的意思哈,包含在头文件
结语:
霞满日月,前路明朗,一起加油!!!