用C语言编程对下述方阵进行存储、平方,并对平方后的结果进行格式化输出。 1 1 0 1 0 1 0 1 0 0 1 1 1 0 0 0
时间: 2024-12-24 12:37:01 浏览: 10
在C语言中,你可以使用二维数组(数组的数组)来存储这种类型的矩阵。首先,我们需要定义一个足够大的数组来存储矩阵的元素。然后,我们可以编写一个函数来计算每个元素的平方,接着再编写一个函数来格式化输出结果。
以下是一个简单的示例:
```c
#include <stdio.h>
// 定义矩阵大小
#define ROWS 4
#define COLS 5
// 定义矩阵类型
typedef struct {
int matrix[ROWS][COLS];
} Matrix;
// 存储矩阵
void store_matrix(Matrix* m) {
for (int i = 0; i < ROWS; i++) {
for (int j = 0; j < COLS; j++) {
if (i == 3 && j == 4) { // 避免在最后一个位置赋值
printf(" "); // 输出空格
} else {
m->matrix[i][j] = i + j;
}
}
printf("\n");
}
}
// 计算并返回矩阵的平方
Matrix square_matrix(const Matrix& m) {
Matrix result;
for (int i = 0; i < ROWS; i++) {
for (int j = 0; j < COLS; j++) {
result.matrix[i][j] = m.matrix[i][j] * m.matrix[i][j];
}
}
return result;
}
// 格式化输出平方后的矩阵
void print_matrix(const Matrix& m) {
for (int i = 0; i < ROWS; i++) {
for (int j = 0; j < COLS; j++) {
printf("%4d ", m.matrix[i][j]); // 使用四位宽度打印整数,空格填充
}
printf("\n");
}
}
int main() {
Matrix matrix;
store_matrix(&matrix);
Matrix squared_matrix = square_matrix(matrix);
printf("Square of the matrix:\n");
print_matrix(squared_matrix);
return 0;
}
```
在这个例子中,我们定义了一个`Matrix`结构体来表示矩阵,并提供了几个函数来操作这个结构体。`store_matrix`函数用于初始化矩阵,`square_matrix`函数用于计算平方,而`print_matrix`函数则负责将结果按照指定格式打印出来。
运行这段程序,你会看到原始矩阵以及它的平方结果被格式化地输出到控制台。
阅读全文