注册 登录
编程论坛 C++教室

杭电OJ2014 wrong answer 题目见正文

Ljldym 发布于 2016-03-03 21:26, 2473 次点击
只有本站会员才能查看附件,请 登录

程序代码:
#include"iostream"
#include <iomanip>
using namespace std;
int main()
{
    int *judger, n,count;
    double avg;
    while (cin >> n)
    {
        if (n > 2 && n <= 100)
        {
            avg = 0;
            judger = (int*)calloc(n, sizeof(int));
            for (count = 0; count < n; count++)
            {
                cin >> judger[count];
            }
            for (count = 1; count < n - 1; count++)
            {
                avg += judger[count];
            }
            avg = avg / (n - 2);
            cout << fixed << setprecision(2) << avg << endl;
        }
    }
}
1 回复
#2
rjsp2016-03-03 23:00
for (count = 1; count < n - 1; count++)
题目要求去掉一个最高分和一个最低分
不是让你去掉第一个评委的分和最后一个评委的分

另外,根本不需要分配数组
读取数据时就统计总分、最低分、最高分
然后相减,再除以n-2
1