打印菱形,用一维数组
时间: 2024-06-13 20:04:52 浏览: 126
打印菱形图案
5星 · 资源好评率100%
要用一维数组打印菱形,可以先构造一个数组,然后根据数组下标的规律来打印出菱形的形状。具体实现方法如下:
```
#include <stdio.h>
int main()
{
int n, i, j;
printf("请输入菱形的行数:");
scanf("%d", &n);
int len = 2 * n - 1; // 数组长度
int arr[len]; // 定义数组
for(i = 0; i < len; i++) // 初始化数组
{
arr[i] = 0;
}
for(i = 0; i < n; i++) // 上半部分
{
arr[n - 1 - i] = 1; // 左半部分
arr[n - 1 + i] = 1; // 右半部分
for(j = 0; j < len; j++) // 打印数组
{
if(arr[j] == 1)
{
printf("*");
}
else
{
printf(" ");
}
}
printf("\n");
}
for(i = n - 2; i >= 0; i--) // 下半部分
{
arr[n - 1 - i] = 0; // 左半部分
arr[n - 1 + i] = 0; // 右半部分
for(j = 0; j < len; j++) // 打印数组
{
if(arr[j] == 1)
{
printf("*");
}
else
{
printf(" ");
}
}
printf("\n");
}
return 0;
}
```
这段代码中,我们首先输入菱形的行数,然后根据行数计算出数组的长度。接着定义一个长度为len的数组,并将数组中的所有元素初始化为0。然后,我们通过循环来构造菱形的上半部分和下半部分,并在每次循环中打印出数组中的元素,从而实现了用一维数组打印菱形的功能。
阅读全文