作业:计算数组的最大合以及最大差 ,最小合
代码
#include <stdio.h>//计算数组的最大合以及最大差
int zuida(int a[],int n);//最大合
int zuixiao(int a[],int n);//最小合
int zuidacha(int a[],int n);
int main(int argc, char *argv[])
{
int a[]={
1,3,4,2,5
};
int n=sizeof(a)/sizeof(int);
printf("最大合=%d\n",zuida(a,n));
printf("最大差%d\n",zuidacha(a,n));
printf("最小合=%d\n",zuixiao(a,n));
return 0;
}
int zuida(int a[],int n)//最大合
{
int i,j,t;
for(i=1;i<n;i++)
{
for(j=0;j<n-i;j++)
{
if(a[j]<a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
return a[0]+a[1];
}
int zuixiao(int a[],int n)//最小合
{
int i,j,t;
for(i=1;i<n;i++)
{
for(j=0;j<n-i;j++)
{
if(a[j]>a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
return a[0]+a[1];
}
int zuidacha(int a[],int n )
{
int i,j,t;
for(i=1;i<n;i++)
{
for(j=0;j<n-i;j++)
{
if(a[j]>a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
return a[n-1]-a[0];
}
运行结果: