测试数据包括多个实例。 每组数据包括7个实数,代表评委们对该选手的评分。紧接着是选手的名字,名字的长度不超过30个字符。 输入直到文件结束。
算出每位选手名字和最终得分,结果保留两位有效数字(四舍五入)。
10 10 10 10 10 10 9 redraiment 0 0 0 0 0 0 0 beast
redraiment 10.00 beast 0.00
#include <iostream> #include <vector> #include <string> #include <algorithm> #include <functional> #include <climits> #include <unordered_map> #include <unordered_set> #include <iomanip> using namespace std; int main() { //freopen("in.txt", "r", stdin); vector<double> grade(7); string name; while (cin >> grade[0]) { for (int i = 1; i < 7; ++i) cin >> grade[i]; cin >> name; sort(grade.begin(), grade.end()); double sum = 0; for (int i = 1; i <= 5; ++i) sum += grade[i]; cout << name << " " << fixed << setprecision(2) << sum / 5 << endl; } }
/* 我的QQ:825580813(欢迎来一起讨论,刷题,PK)。 这道题呢就是一个排序,掐头去尾就好,所以就不多说啦哈。^_* */ #include <iostream> #include <algorithm> #include <string> using namespace std; int main () { ios::sync_with_stdio(false); //关闭cin的同步功能,增加运行效率 double aggregateScore = 0, score, minScore, maxScore; while( cin >> score ) { aggregateScore = maxScore = minScore = score; for( int i = 1; i < 7; i++ ) { cin >> score; aggregateScore += score; maxScore = score > maxScore ? score : maxScore; minScore = score < minScore ? score : minScore; } string name; cin >> name; cout << name << " "; printf ("%.2lf\n", (aggregateScore - minScore - maxScore) / 5); } return 0; } 这段代码有哪里错吗?
#include <bits/stdc++.h> int main(int argc, char const *argv[]) { float score, maxScore, minScore, sum; char name[30]; while (scanf("%f", &score) != EOF) { sum = minScore = maxScore = score; for (int i = 1; i < 7; ++i) { scanf("%f", &score); sum += score; maxScore = score > maxScore ? score : maxScore; minScore = score < minScore ? score : minScore; } scanf("%s", name); printf("%s %.2f\n", name, (sum - maxScore - minScore) / 5); } return 0; }
// write your code here cpp #include <iostream> #include <vector> #include <string> #include <algorithm> #include <iomanip> using namespace std; int main() { vector<double> score(7); while(cin>>score[0]) { for(int i=1;i<7;++i) cin>>score[i]; string name; cin>>name; sort(score.begin(),score.end()); double sum=0; for(int i=1;i<=5;++i) sum+=score[i]; cout<<name<<" "<<fixed<<setprecision(2)<<sum/5<<endl; } return 0; }
#include<iostream> #include<string> #include<vector> #include<algorithm> using namespace std; int main() { string s; double num; while (cin >> num) { vector<double> data; data.push_back(num); for (int i = 0; i < 6; i++) { cin >> num; data.push_back(num); } cin >> s; sort(data.begin(), data.end()); double count = 0.0; for (int i = 1; i < 6; i++) count += data[i]; cout << s << " "; printf("%.2lf\n", count / 5); } return 0; }
import java.text.DecimalFormat; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while (sc.hasNext()) { double max = 0; double min = 100; double sum = 0; for (int i = 0; i < 7; i ++ ) { double a = sc.nextDouble(); sum += a; min = min < a ? min : a; max = max > a ? max : a; } String name = sc.next(); System.out.println(name + " " + new DecimalFormat("#0.00").format((sum - min - max) / 5)); } } }