兄弟姐妹这个怎么搞啊

img


如题,请问这个要怎么编,刚开始学编程,希望大家能指导一下,谢谢!😭尤其是下标,学不会了


#include<stdio.h>
int main()
{
    int a[10]={10,51,32,72,3,9,26,90,87,60},i,flag1,flag2;
    int max,min,s=0,aver;//s初始化赋值0 
    max=a[0];min=a[0];//现将最小值,最大值初始化赋值
    for(i=0;i<10;i++)//利用for循环逐个判断 
    {
        if(max<a[i]) 
        {
        max=a[i];flag1=i;//max小于数组中的元素值时,更新max和flag1(下标) 
        }
        if(min>a[i])
        {
            min=a[i];flag2=i;//min大于数组中的元素值时,更新min和flag2(下标) 
         } 
         s=s+a[i];
     } 
     printf("最大值:%d   下标:%d\n",max,flag1);
      printf("最小值:%d    下标:%d\n",min,flag2);
      aver=s/10;//求平均
      int count=0;//大于平均值计数 
      for(i=0;i<10;i++)
      {
          if(aver<a[i])
          {
              count++;
          }
       } 
       printf("高于平均值个数:%d",count);
 } 

使用指针操作,如下:

#include<stdio.h>
int main()
{
    int a[10] = { 10,51,32,72,3,9,26,90,87,60 },*p,max,min,num_max,num_min,sum=0,count=0;
    float ave;
    p = a;  //指针指向数组
    max = min = a[0];
    for (int i=0; i<10; i++)
    {
        if (*(p + i) > max)    //求最大值及下标
        {
            max = *(p + i);
            num_max = i;
        }
        if (*(p + i) < min)    //求最小值及下标
        {
            min = *(p + i);
            num_min = i;
        }
        sum += *(p + i);    //求和
    }
    ave = sum / 10.0;    //求平均值
    for (int i = 0; i<10; i++)    //求高于平均值的个数
        if (*(p+i) > ave)
            count++;
    printf("这组数的最大值是%d,在数组中的下标为%d\n", max, num_max);
    printf("这组数的最小值是%d,在数组中的下标为%d\n", min, num_min);
    printf("这组数的平均值是%f,高于平均值的数据个数为%d\n", ave, count);
    return 0;
}