题意:
计算gpa,输入一个数字和一个字符串,用 数字×字符串对应的数值
思路:
用map对应数值,要注意的是字符串为p或者n的时候,不计入结果
代码:
#include<iostream> #include<string> #include<cstring> #include<cstdio> #include<map> using namespace std; map<string, double> mp; int main() { mp["a"] = 4.0; mp["a-"] = 3.7; mp["b+"] = 3.3; mp["b"] = 3.0; mp["b-"] = 2.7; mp["c+"] = 2.3; mp["c"] = 2.0; mp["c-"] = 1.7; mp["d"] = 1.3; mp["d-"] = 1.0; mp["f"] = 0.0; int t; while (~scanf("%d", &t)) { double x, ans = 0.0, index = 0.0; string str; for (int i = 1; i <= t; i++) { cin >> x >> str; if (str == "p" || str == "n") continue; ans += x * mp[str]; index += x; } if (index == 0) printf("0.00n"); else printf("%.2lfn", ans / index); } return 0; }
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/c-cdevelopment/607619.html