c语言数组求相邻三个数之和的最小数
时间: 2024-12-08 09:17:25 浏览: 16
C语言第六章数组PPT课件.pptx
在C语言中,你可以通过遍历数组并比较当前元素与其前一个元素和后一个元素之和来找到相邻三数之和的最小值。这里是一个简单的示例代码:
```c
#include <stdio.h>
int find_min_sum(int arr[], int size) {
if (size < 3) { // 如果数组长度小于3,无法计算三数之和
return -1; // 或者抛出错误,因为找不到有效的组合
}
int min_sum = arr[0] + arr[1] + arr[2]; // 初始化最小和为第一个三数之和
for (int i = 1; i < size - 1; i++) { // 遍历数组,跳过首尾两个元素,避免越界
int current_sum = arr[i] + arr[i-1] + arr[i+1];
if (current_sum < min_sum) {
min_sum = current_sum;
}
}
return min_sum;
}
int main() {
int arr[] = {5, -6, 7, -8, 9}; // 测试数组
int size = sizeof(arr) / sizeof(arr[0]);
int result = find_min_sum(arr, size);
if (result != -1) {
printf("相邻三个数之和的最小值是: %d\n", result);
} else {
printf("无法找到满足条件的三个数之和。\n");
}
return 0;
}
```
这个程序会找出给定数组中相邻三个数的最小和。如果数组长度不足3,则返回-1表示无法计算。运行此程序后,它会在控制台上打印出最小的三数之和。
阅读全文