c语言中怎么用二维数组输出一个矩形
时间: 2023-04-10 08:00:33 浏览: 116
可以使用两个for循环来遍历二维数组,然后在内层循环中判断当前位置是否在矩形的边界上,如果是则输出一个字符,否则输出空格。具体代码如下:
```c
#include <stdio.h>
int main() {
int rows = 5, cols = 10; // 矩形的行数和列数
char rect[rows][cols]; // 定义二维数组
// 初始化二维数组
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
if (i == 0 || i == rows - 1 || j == 0 || j == cols - 1) {
rect[i][j] = '*'; // 在边界上输出 *
} else {
rect[i][j] = ' '; // 在内部输出空格
}
}
}
// 输出二维数组
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
printf("%c", rect[i][j]);
}
printf("\n");
}
return 0;
}
```
相关问题
用C语言程序输入输出二维数组的的矩形方阵
当使用C语言时,可以使用双重循环来输出二维数组的矩形方阵。以下是一个示例程序:
```c
#include <stdio.h>
int main() {
int array[2][4] = {{1, 2, 3, 4}, {5, 6, 7, 8}};
int rows = sizeof(array) / sizeof(array[0]);
int cols = sizeof(array[0]) / sizeof(array[0][0]);
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
printf("%d\t", array[i][j]);
}
printf("\n");
}
return 0;
}
```
这段代码会输出:
```
1 2 3 4
5 6 7 8
```
在这个示例中,我们使用了一个名为`array`的二维整数数组来存储数据。通过计算数组的行数和列数,我们可以在循环中遍历并打印每个元素。每个元素之间使用制表符(`\t`)进行分隔,通过`printf("\n")`换行。
c语言将二维数组绘制成图
C语言本身不支持直接绘制图形,但是可以使用第三方库,如graphics.h来实现图形绘制。以下是一个简单的例子,展示如何将一个二维数组绘制成一个简单的热力图:
```c
#include <graphics.h>
int main() {
// 定义二维数组
int a[5][5] = {
{5, 10, 15, 20, 25},
{10, 15, 20, 25, 30},
{15, 20, 25, 30, 35},
{20, 25, 30, 35, 40},
{25, 30, 35, 40, 45}
};
// 初始化图形界面
initwindow(400, 400, "Array Heatmap");
// 绘制热力图
int x = 50;
int y = 50;
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 5; j++) {
// 计算颜色值
int color = a[i][j] * 10;
// 绘制矩形
setfillstyle(SOLID_FILL, color);
bar(x, y, x + 50, y + 50);
// 更新位置
x += 50;
}
x = 50;
y += 50;
}
// 等待用户关闭界面
getch();
closegraph();
return 0;
}
```
这段代码使用了graphics.h库来绘制一个窗口,并在窗口中绘制了一个简单的热力图,其中每个矩形的颜色代表数组元素的值。你可以根据自己的需求修改代码以满足你的要求。