C语言实现两个数组选取最大三个元素
C语言实现两个数组选取最大三个元素
以下是一个简单的C语言程序,用于比较两个数组并选择最优的三个:
#include <stdio.h>
int main() {
int arr1[] = {3, 7, 2, 9, 4};
int arr2[] = {6, 1, 8, 5, 10};
int max[3] = {0};
int i, j;
// 找到arr1中最大的三个数
for(i = 0; i < 5; i++) {
if(arr1[i] > max[0]) {
max[2] = max[1];
max[1] = max[0];
max[0] = arr1[i];
} else if(arr1[i] > max[1]) {
max[2] = max[1];
max[1] = arr1[i];
} else if(arr1[i] > max[2]) {
max[2] = arr1[i];
}
}
// 找到arr2中最大的三个数
for(i = 0; i < 5; i++) {
if(arr2[i] > max[0]) {
max[2] = max[1];
max[1] = max[0];
max[0] = arr2[i];
} else if(arr2[i] > max[1]) {
max[2] = max[1];
max[1] = arr2[i];
} else if(arr2[i] > max[2]) {
max[2] = arr2[i];
}
}
// 输出最大的三个数
printf("最大的三个数是:");
for(i = 0; i < 3; i++) {
printf("%d ", max[i]);
}
printf("\n");
return 0;
}
这个程序首先声明了两个数组arr1和arr2,然后使用两个for循环分别查找每个数组中的最大值。在每次循环中,程序使用一个if-else语句来比较当前元素与当前最大值。如果当前元素大于当前最大值,则将当前最大值存储在max数组的正确位置上,并将较小的最大值向右移动。最后,程序输出max数组中的前三个元素,这些元素即为两个数组中的最大值。
原文地址: https://www.cveoy.top/t/topic/ov6u 著作权归作者所有。请勿转载和采集!