求一个10个数的数列中两个不相邻数的最大值(这个数列没规律,小弟新手哪个大哥帮一下,改一下下面的程序,我刚来没积分)
求一个10个数的数列中两个不相邻数的最大值(这个数列没规律,小弟新手哪个大哥帮一下,改一下下面的程序,我刚来没积分)int m,a,c;
void sort(int b[10],int n) //找出最大的三个数
{int i,j,t;
for (i=0;i<=n-1;i++)
for(j=1;j<n-1-i;j++)
if (b[i]>b[i+1])
{t=b[i];b[i+1]=b[i];b[i+1]=t;}
m=b[n];
a=b[n-1];
c=b[n-2];
}
main()
{int num[10],d,e,i,a[10];
printf("input number\n");
for (i=0;i<10;i++)
scanf("%d",&num[i]);
for (i=0;i<10;i++)
a[i]=num[i];
void sort(num[10],10);
for (i=0;i<10;i++) //看最大的数和第二个数是否相邻10;i++) //看最大的数和第二个数是否相邻
if (m==a[i])
d=i;
for (i=0;i<10;i++)
if (a==a[i]) //如果相邻,取最大的数和第三个数,否则取第一个和第二个数的和。
e=i;
if (d==e-1||d==e+1)
printf("%d",m+c);
else
printf("%d",m+a);
getch();
}