标题:已知函数头“void avg(void)”,函数的功能:输入十个分数,去掉最高分和 ...
只看楼主
krisdei
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2018-4-6
结帖率:50%
已结贴  问题点数:5 回复次数:19 
已知函数头“void avg(void)”,函数的功能:输入十个分数,去掉最高分和最低分,求平均分,保留一位小数。编写并调用函数avg。
#include<stdio.h>
main(void)
{
    void avg(void);
    int i;
    double a[10],x;
    for(i=0;i<10;i++)
        scanf("%lf",&a[i]);
    printf("平均值=%.1f\n",x);
    return 0;
}
void avg(void)
{
    int i;
    double a[10],max,min,sum,x;
    for(i=0;i<10;i++)
        scanf("%f",&a[i]);
    max=a[0];
    min=a[0];
    for(i=0;i<10;i++)
    {
        if(max<a[i])
            max=a[i];
        if(min>a[i])
            min=a[i];
        sum+=a[i];
    }
    x=(sum-max-min)/8;
    return;
}
昨天做了半天 得不出答案
望大神赐教
搜索更多相关主题的帖子: 函数 void for max min 
2018-04-22 12:15
nosnoy
Rank: 9Rank: 9Rank: 9
来 自:mcu
等 级:贵宾
威 望:14
帖 子:540
专家分:1158
注 册:2016-9-17
得分:1 
你可以先去百度下函数声明和函数调用的方法

穷举是最暴力的美学
2018-04-22 12:21
nosnoy
Rank: 9Rank: 9Rank: 9
来 自:mcu
等 级:贵宾
威 望:14
帖 子:540
专家分:1158
注 册:2016-9-17
得分:0 
如果函数头不能更改的话
你定义的变量就不能为局部变量
应该是全局变量

穷举是最暴力的美学
2018-04-22 12:25
自学的数学
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:46
帖 子:967
专家分:4146
注 册:2017-11-15
得分:1 
还有更简单的代码,可以完成这个功能。行吗??
2018-04-22 12:25
krisdei
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2018-4-6
得分:0 
回复 4楼 自学的数学
只要有这个函数就可以
2018-04-22 13:01
自学的数学
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:46
帖 子:967
专家分:4146
注 册:2017-11-15
得分:0 
简单到这个函数都不要,同样可以完成这个功能。行不?
2018-04-22 13:03
krisdei
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2018-4-6
得分:0 
回复 6楼 自学的数学
emmmm可以
2018-04-22 13:05
自学的数学
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:46
帖 子:967
专家分:4146
注 册:2017-11-15
得分:0 
#include<stdio.h>
int main()
{
  int integer,i,max,min,sum;
  max=-32768; /*先假设当前的最大值max为C语言整型数的最小值*/
  min=32767; /*先假设当前的最小值min为C语言整型数的最大值*/
  sum=0; /*将求累加和变量的初值置为0*/
  for(i=1;i<=10;i++)
    {
      printf("Input number %d=",i);
      scanf("%d",&integer); /*输入评委的评分*/
      sum+=integer; /*计算总分*/
      if(integer>max)max=integer; /*通过比较筛选出其中的最高分*/
      if(integer<min)min=integer; /*通过比较筛选出其中的最低分*/
    }
  printf("Canceled max score:%d\nCanceled min score:%d\n",max,min);
  printf("Average score:%d\n",(sum-max-min)/8); /*输出结果*/
}
2018-04-22 13:07
krisdei
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2018-4-6
得分:0 
回复 8楼 自学的数学
看懂了 不过还是要用函数做 老师要求的

[此贴子已经被作者于2018-4-22 13:12编辑过]

2018-04-22 13:10
自学的数学
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:46
帖 子:967
专家分:4146
注 册:2017-11-15
得分:0 
我还不是大学生呢。我是在网络上自学编写出来的,你还看不懂?慢慢看嘛,没事。

[此贴子已经被作者于2018-4-22 13:17编辑过]

2018-04-22 13:13



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-486277-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.094615 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved