关于递增递减数列的问题
一个数列中,有递增数列,也有递减数列。但是我们要找出最长的那个递增数列或者递减数列,将它的长度输出出来.输入案例
10
1 2 4 9 6 4 3 2 1 5
输出案例
6
程序代码:
#include<stdio.h> int main() { int x,a[999]; int i; int num1=1,num2=1; int max1=1,max2=1; scanf("%d",&x); for(i=0;i<x;i++); scanf("%d",&a[i]); for(i=0;i<x-1;i++) { if(a[i]<a[i+1]) { num2=1; num1++; } if(a[i]>a[i+1]) { num1=1; num2++; } if(num1>=max1) max1=num1; if(num2>=max2) max2=num2; } printf("%d",max1>max2?max1:max2); return 0; }
为什么超过7后会出现错误?
求大神解答?谢谢!