好想睡觉 2023-05-28 16:11 采纳率: 50%
浏览 143
已结题

问题:从键盘输入n(n<=100)数,求这些数的平均值,并找出其中最大值和最小值,(12345分别怎么填)


#include <stdio.h>
int main()
{
    float minmax(float a[], int n, float *p, float *q);
    float arr[100],max,min,average;
    int n,i;
    scanf("%d",&n);
    for (i=0;i<n;i++)
        scanf("%f",&arr[i]);
    average=minmax(①);
    printf("average=%.2f, max=%.2f, min=%.2f\n", average, max, min);
    return 0;
}
float minmax(float a[],int n,float *p,float *q)
{
    float sum=0,*pi=a;
    *p=a[0]; 
    *q=a[0];
    while(②)
    {
    sum+=*pi;
    if(*p<*pi)
     ③
    else if(*q>*pi)
       ④
    pi++;
    }
    return ⑤;
}
  • 写回答

2条回答 默认 最新

  • 少林and叔叔 2023-05-28 16:26
    关注

    程序已经修改,请见下图源码:

    #include <stdio.h>
    int main()
    {
        float minmax(float a[], int n, float *p, float *q);
        float arr[100],max,min,average;
        int n,i;
        scanf("%d",&n);
        for (i=0;i<n;i++)
            scanf("%f",&arr[i]);
        average=minmax(arr,n,&max,&min);
        printf("average=%.2f, max=%.2f, min=%.2f\n", average, max, min);
        return 0;
    }
    float minmax(float a[],int n,float *p,float *q)
    {
        float sum=0,*pi=a;
        *p=a[0]; 
        *q=a[0];
        while(*pi!=null)
        {
        sum+=*pi;
        if(*p<*pi)
         *p=*pi;
        else if(*q>*pi)
           *q=*pi;
        pi++;
        }
        return sum/n;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 6月5日
  • 已采纳回答 5月28日
  • 修改了问题 5月28日
  • 创建了问题 5月28日