求个作业答案 求大神
已知7个数(2,3,1,5,0,6,4)放在一整型数组num[ ]中,请分别用函数实现下列功能,在主函数中调用这些函数。1、求7个数中的最大值及其所在序号。
2、求7个数的平均值。
3、依次输出这7个数。
4、将这7个数降序排列。
5、利用折半查找来查找某一数,要查找的数在主函数中输入。

程序代码:/*
已知7个数(2,3,1,5,0,6,4)放在一整型数组num[ ]中,请分别用函数实现下列功能,在主函数中调用这些函数。
1、求7个数中的最大值及其所在序号。
2、求7个数的平均值。
3、依次输出这7个数。
4、将这7个数降序排列。
5、利用折半查找来查找某一数,要查找的数在主函数中输入
*/
#include<stdio.h>
int Sort(int a[],int n);
int Find_Max(int a[],int n);
int Aver(int a[],int n);
int PRINT(int a[],int n);
int Find(int a[],int x,int n);
int Find_Max(int *a,int n)
{
int tmp=-100000;
int cou;
for(int i=0;i<n;i++)
{
if(*(a+i)>tmp)
{
tmp=*(a+i);
cou=i+1;
}
}
printf("最大值:%d,序号:%d\n",tmp,cou);
}
int Aver(int a[],int n)
{
float tmp=0;
for(int i=0;i<n;i++)tmp+=*(a+i);
printf("average:%.2f\n",tmp/n);
}
int PRINT(int a[],int n)
{
for(int i=0;i<n;i++)
{
printf("%d\t",*(a+i));
}
printf("\n");
}
int Sort(int a[],int n)
{
for(int i=1;i<n;i++)
{
int tmp=a[i];
int j=i-1;
while(j>=0&&a[j]<tmp)
{
a[j+1]=a[j];
j=j-1;
}
a[j+1]=tmp;
}
}
int Find(int a[],int x,int n)
{
int low=0,high=n-1,Mid;
while(low<=high)
{
Mid=(low+high)/2;
if(a[Mid]>x)
high=Mid-1;
else if(a[Mid]<x)
low=Mid+1;
else return Mid;
}
return -1;
}
int main()
{
int num[7]={2,3,1,5,0,6,4};
Find_Max(num,7);
Aver(num,7);
PRINT(num,7);
Sort(num,7);
PRINT(num,7);
printf("3排在第%d位",Find(num,3,7)+1);
return 0;
}