.利用指向行的指针变量求一个四行五列数组各行元素之和。C语言代码是什么
时间: 2024-02-28 14:52:15 浏览: 20
以下是求解四行五列数组各行元素之和的C语言代码:
```c
#include <stdio.h>
int main() {
int arr[4][5] = {{1, 2, 3, 4, 5}, {6, 7, 8, 9, 10}, {11, 12, 13, 14, 15}, {16, 17, 18, 19, 20}};
int sum[4] = {0}; // 存放各行元素之和的数组
int *p; // 指向行的指针变量
for(int i = 0; i < 4; i++) {
p = *(arr + i); // 将p指向第i行的首元素
for(int j = 0; j < 5; j++) {
*(sum + i) += *(p + j); // 计算第i行元素之和并存入sum数组中
}
}
for(int i = 0; i < 4; i++) {
printf("第%d行元素之和为:%d\n", i+1, *(sum + i));
}
return 0;
}
```
输出结果为:
```
第1行元素之和为:15
第2行元素之和为:40
第3行元素之和为:65
第4行元素之和为:90
```
相关问题
C语言:利用指向行的指针变量求5*3数组各行元素之和
可以使用如下代码实现:
```c
#include <stdio.h>
int main() {
int arr[5][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}, {10, 11, 12}, {13, 14, 15}};
int *p;
int sum;
for (int i = 0; i < 5; i++) {
p = arr[i];
sum = 0;
for (int j = 0; j < 3; j++) {
sum += *(p + j);
}
printf("第%d行元素之和:%d\n", i+1, sum);
}
return 0;
}
```
在上述代码中,我们定义了一个二维整型数组 `arr`,并初始化了它的元素。
然后,我们定义了一个整型指针变量 `p`,用于指向数组的行。
接着,我们使用循环遍历数组的每一行,将指针 `p` 指向当前行的首元素。
在内层循环中,我们使用指针访问当前行的每一个元素,并将它们累加到变量 `sum` 中。
最后,我们输出每一行元素之和的结果。
运行上述程序,输出结果如下:
```
第1行元素之和:6
第2行元素之和:15
第3行元素之和:24
第4行元素之和:33
第5行元素之和:42
```
用c语言编写:求各行元素和。利用指向行的指针变量求5×3数组各行元素之和
好的,我可以帮你回答这个问题。以下是用C语言编写的代码,可以求5×3数组各行元素之和:
```c
#include <stdio.h>
int main() {
int arr[5][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}, {10, 11, 12}, {13, 14, 15}};
int rowSum[5]; // 用于存储各行元素之和的数组
// 计算各行元素之和
for (int i = 0; i < 5; i++) {
int sum = 0;
for (int j = 0; j < 3; j++) {
sum += arr[i][j];
}
rowSum[i] = sum;
}
// 输出各行元素之和
for (int i = 0; i < 5; i++) {
printf("第 %d 行元素之和为 %d\n", i+1, rowSum[i]);
}
return 0;
}
```
在这份代码中,我们声明了一个5×3的二维数组 `arr`,然后用一个 `rowSum` 数组来存储各行元素之和。接着,我们使用双重循环来计算每一行的元素之和,并将结果存储到 `rowSum` 数组中。最后,我们遍历 `rowSum` 数组,输出各行元素之和。
希望这个代码可以帮到你!