c51编程,去除最高值和最低值然后求平均值并要求画流程图,求大神帮忙...
发布网友
发布时间:2022-08-17 02:43
我来回答
共1个回答
热心网友
时间:2023-10-09 17:27
是这样的//你要求写代码 但是5分未免太低 我给你个思路行吧,,要学会擅长独立思考
首先比大小很简单
假设你的值是500个数组
int main()
{
int temp[500];//这里面是已经被赋值过得 随机数
unsigned int num;
unsigned long add=0;
//装包
struct {
int wei;//位置
int ;//值
}max;//最大值包
struct {
int wei;//位置
int ;//值
}min;//最小值包
max.=0;
min.=65535;
for(num=500; num>0; num-- )
{
if(temp[num]>max.)//如果缓冲流中的值大于max的值(max初始是0)
{
max.=temp[num];//注入最大值到包内
max.wei=num;//将位置注入到包内
}
if(temp[num]<min.)//如果缓冲流中的值大于min的值(min初始是65535)
{
min.=temp[num];//注入最小值到包内
min.wei=num;//将位置注入到包内
}
}
for( num=500; num>0; num-- )
{
add+=temp[num];
}
//求出总和
add-=((max.)+(min.));//减去最大最小数据
add/=500-2;//(注意这里的n是你一共有多少个元素 例如原本有10个元素,去掉最高数字//////
//和最低数字后 他们的数量也要变 不然他们都是0,也会带入进去运算的 这样平均值会降低,so你
//懂的)减去2是减去刚刚的去掉的数量
return 0;
}
以上程序已通过编译测试可放心使用
绝对原创
我是给你提供思路 结果还是帮你写出来了 自己改改吧,要是觉得满意加点分呗 大冬天的写代码不容易 手好冷