输入4×4的数组,编写程序实现下列功能: (1)求出对角线上各元素的和; (2)求出数组中下标为奇数的元素的和; (3)求出数组中偶数的和; (4)找出每行最大元素并输出。用c语言写
时间: 2024-02-22 16:54:39 浏览: 77
好的,以下是用C语言实现的程序代码:
```c
#include <stdio.h>
int main()
{
int arr[4][4];
int i, j;
int diagonal_sum = 0, odd_index_sum = 0, even_sum = 0;
printf("请依次输入4x4数组的元素:\n");
for (i = 0; i < 4; ++i) {
for (j = 0; j < 4; ++j) {
scanf("%d", &arr[i][j]);
}
}
// 求对角线上各元素的和
for (i = 0; i < 4; ++i) {
diagonal_sum += arr[i][i];
}
printf("对角线上各元素的和为:%d\n", diagonal_sum);
// 求数组中下标为奇数的元素的和
for (i = 0; i < 4; ++i) {
for (j = 0; j < 4; ++j) {
if ((i + j) % 2 == 1) {
odd_index_sum += arr[i][j];
}
}
}
printf("下标为奇数的元素的和为:%d\n", odd_index_sum);
// 求数组中偶数的和
for (i = 0; i < 4; ++i) {
for (j = 0; j < 4; ++j) {
if (arr[i][j] % 2 == 0) {
even_sum += arr[i][j];
}
}
}
printf("数组中偶数的和为:%d\n", even_sum);
// 找出每行最大元素并输出
printf("每行最大元素为:\n");
for (i = 0; i < 4; ++i) {
int max = arr[i][0];
for (j = 1; j < 4; ++j) {
if (arr[i][j] > max) {
max = arr[i][j];
}
}
printf("%d\n", max);
}
return 0;
}
```
希望能够帮到你。
阅读全文