谁能帮我用c语言写一个程序啊,下面是题目:

来源:百度知道 编辑:UC知道 时间:2024/05/29 19:16:49
设一歌唱评奖晚会上有10个评委,编写一程序,依次输入10个评委的分数,去年2个最高分,2个最低分,计算余下的分数平均值作为歌手的最后得分

#include<stdio.h>
void main()
{
int a[10],i,j,s,temp;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=1;i<10;i++)
for(j=0;j<10-i;i++)
if(a[j]>a[j+1])
{
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
for(i=2;i<=7;i++)
s+=a[i];
s=s/6;
printf("\n%d",s);
}
先对数组排序,yon冒泡排序把,然好,最前同最后两个
不要进入累加循环,就可以了,其中冒泡排序可以优化,我就不做了,希望你学习愉快。

不写简单的程序怎么回学好C呢?

只需要将最大和最小的两个去除,不需要排序,用两个循环将最大的和最小的两个数分别赋给数组的最后一个和第一个。
#include<stdio.h>
void main()
{
int a[10],i,temp,sum=0;
float ave;
printf("输入十个评委的分数:\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<9;i++)
if(a[i]>a[i+1])
{
temp=a[i];
a[i]=a[i+1];
a[i+1]=temp;
}
for(i=9;i>0;i--)
if(a[i]<a[i-1])
{
temp=a[i]; <