有7名裁判进行打分,要求除去最高分和最低分,然后计算平均分,输出结果到屏幕。要求调用函数
#include<stdio.h>
double jisuan(int a[],int n){
int i,j,max=a[0],min=a[0],sum=a[0];
for(i=1;i<n;i++){
sum+=a[i];
if(a[i]>max){
max=a[i];
}
if(a[i]<min){
min=a[i];
}
}
sum=sum-max-min;
return sum*1.0/(n-2);
}
int main(){
int a[7],i;
for(i=0;i<7;i++){
printf("请输入第%d名裁判分数:",i+1);
scanf("%d",&a[i]);
}
double ave = jisuan(a,7);
printf("最终平均分为:%.2f",ave);
return 0;
}
供参考:
#include <stdio.h>
#include <stdlib.h>
void fun(float* a, int n)
{
int i;
float b, max = a[0], min = a[0], sum = a[0];
for (i = 1; i < n; i++)
{
if (max < a[i])
max = a[i];
if (min > a[i])
min = a[i];
sum = sum + a[i];
}
b = (sum - max - min) / (n - 2);
printf("average:%.2f\n", b);
}
int main()
{
int n = 7, i;
float a[7];
for (i = 0; i < n; i++)
scanf("%f", &a[i]);
fun(a, n);
return 0;
}