#include <stdio.h>
#include <malloc.h>
void main ()
{
int *p;
int NUM,i,temp,j,all;
float k;
printf("how many numbers\n");
scanf("%d",&NUM);
p = malloc(NUM * sizeof(int));
printf("input the numbers\n");
for(i=0;i<NUM;i++)scanf("%d",p+i);
for(i=0;i<NUM-1;i++)
{
for(j=0;j<NUM-1-i;j++)
{
if(*(p+j)>*(p+j+1))
{
//互换
temp = *(p+j);
*(p+j)=*(p+j+1);
*(p+j+1)= temp;
}
}
}
all=0;
for(i=1;i<NUM-1;i++)
{
temp=*(p+i);
all = all + temp;
}
k=(float)(all/(NUM-2));
printf("%d\n",all);
printf("%f\n",k);
}
vc6.0下调试通过
不能运行这个程序,有错误
追答#include "stdio.h"
int main()
{
int n, x;
double sum = 0;
int max = 0;
double avg;
int min = 1= x ? max : x;//max 保存这N个数里面的最大值
min = min <= x ? min : x;//min保存这N个数里面的最小值
}
sum = sum - max - min;//去掉最大值和最小值
avg = sum / n;//求平均
printf ("avg = %lf, max = %d, min = %d\n", avg, max, min);//输出
return 0;
}
已经编译测试过可运行。