用c语言,编写程序实现以下功能:定义3*3二维整数数组,利用指针求此二维数组每一行元素的和,并显示到屏幕上。
时间: 2024-12-22 16:16:30 浏览: 4
C语言 指针与二维数组详解
在C语言中,你可以使用结构化编程来实现这个功能。首先,你需要定义一个3x3的二维整数数组,然后定义一个指向一维数组的指针来访问每一行的元素,接着计算每行的和。这里是一个简单的示例:
```c
#include <stdio.h>
#define ROWS 3
#define COLS 3
// 定义二维数组
int matrix[ROWS][COLS] = {
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
};
void sumOfRow(int (*row)[COLS], int row_num) {
int sum = 0;
for (int i = 0; i < COLS; i++) {
sum += row[row_num][i];
}
printf("Sum of row %d: %d\n", row_num + 1, sum);
}
int main() {
// 指向二维数组的指针
int *row_ptr;
// 计算并显示所有行的和
for (int i = 0; i < ROWS; i++) {
row_ptr = &matrix[i][0]; // 获取当前行的首地址
sumOfRow(row_ptr, i); // 调用函数处理这一行
}
return 0;
}
```
在这个程序中,`sumOfRow`函数接受一个指向一维数组的指针和行号,通过遍历那一行的所有元素来计算和。在`main`函数中,我们循环遍历每一行,将每个行的首地址传递给`sumOfRow`。
运行上述代码后,你将看到屏幕显示每行元素的和。
阅读全文