该程序使用一个循环遍历数据
对于每个数据点,检查它是否是凹凸段。
如果数据点既是凸段又是凹段,则只需要输出一次凹凸段的位置即可。
如果循环结束后仍未找到凹凸段,则输出“数据未出现凹凸段”。
代码如下:
#include <stdio.h>
int main() {
int data[] = {1, 3, 7, 9, 11, 15, 17, 18, 20, 18, 14, 10, 6, 4, 2}; // 示例数据
int n = sizeof(data) / sizeof(data[0]); // 数据长度
int i;
for (i = 3; i < n - 1; i++) {
if ((data[i] > data[i-1] && data[i] > data[i+1]) || (data[i] < data[i-1] && data[i] < data[i+1])) {
printf("数据出现凹凸段,位置为 %d\n", i);
return 0;
}
}
printf("数据未出现凹凸段\n");
return 0;
}
该程序假设数据存储在一个整数数组中,并且数组的长度至少为4。