c语言:去除最高分最低分,求平均值|练习题

一、题目

有10个裁判评分,去除最高分和最低分,求运动员的平均分。

如图:

二、思路分析

1、设置一个数组变量,用冒泡排序法排序

2、数组的首位和最后一位,就是最低分和最高分

3、数组的第二到n-1个,就是符合要求的分数

三、代码截图【带注释】

四、源代码【带注释】

#include <stdio.h>

#define N 10//定义常数iconN

//输入10个分数,去除最低分和最高分,求平均值

//思路分析:

//1、设置一个数组变量,用冒泡排序法排序

//2、数组的首位和最后一位,就是最低分和最高分

//3、数组的第二到n-1个,就是符合要求的分数

void sort(int\[\]);//定义排序函数

void aver(int\[\]);//定义求平均值函数

int main()

{

int arriconN;

printf("请输入%d个分数。\n\n",N);

for(int i=0; i<N; i++)

{

printf("第%d个:",i+1);

scanf("%d",&arri);

}

sort(arr);

aver(arr);

}

//用冒泡排序法排序

void sort(int arr\[\])

{

int temp=0;

for(int i=0; i<N-1; i++)

{

for(int j=0; j<N-i-1; j++)

{

if(arrj<arrj+1)

{

temp=arrj+1;

arrj+1=arrj;

arrj=temp;

}

}

}

}

//从第二位到N-1位的分数,就是要求的分数

aver(int arr\[\])

{

int sum=0;

//求第二位循环到N-1位的分数和

for(int i=1; i<N-1; i++)

{

sum=sum+arri;

}

printf("\n去掉\n最高分:%d",arr0);

printf("\n最低分:%d\n",arrN-1);

printf("\n\n%d个分数的平均分是:%.2f",

N-2,(float)sum/(N-2));

}

五、运行结果

关注我,每天分享编程知识

相关推荐
老王爱玩车4 小时前
自定义类型:结构体
c语言·开发语言·学习
潼心1412o4 小时前
C++初阶(长期更新)第5讲:类和对象(中)
开发语言·c++
weixin_307779134 小时前
C++代码实现MATLAB中的normalize函数功能
开发语言·c++·算法·matlab
谢亮_vipxieliang4 小时前
Go WaitGroup与Once——并发同步的基石
开发语言·后端·golang
不会就选b4 小时前
算法日常・每日刷题--<动态规划>11
算法
(Charon)4 小时前
【C++面试】手写String类:同时实现拷贝构造与移动构造
c++·算法
程序员老陆4 小时前
通过std::unique_ptr初始化std::shared_ptr
开发语言·c++
liangshanbo12154 小时前
前端面试题:AI 对话中超长消息导致内存溢出,怎么解决?
java·开发语言·前端
迷途之人不知返4 小时前
算法系列6:模拟
算法
旺仔仔仔4 小时前
# 机器人项目实战(1):选相机、试深度,再到手眼标定
算法