测试成绩计算器

输入答对题数和题目总数,一次算出百分制得分率、字母等级和及格判定,并给出每个等级的最低答对题数对照表。

84.0%(B,及格)

答对 42 / 50 题,答错 8 题,每题 2.00 个百分点;再错 1 题是 82.0%(B-),再对 1 题是 86.0%(仍是 B)。

字母等级对照表(按题目总数 50 与 20 各算一列,默认显示 12 行)
等级最低得分率总 50 题至少答对总 20 题至少答对含义
A+97%49 题20 题顶尖
A93%47 题19 题优秀
A-90%45 题18 题优良
B+87%44 题18 题良好偏上
B83%42 题17 题良好
B-80%40 题16 题良好偏下
C+77%39 题16 题中上
C73%37 题15 题中等
C-70%35 题14 题中下
D+67%34 题14 题及格偏上
D63%32 题13 题及格
D-60%30 题12 题及格线
F低于 60%——不及格

数值仅作演示。字母等级是美式学校常见的 +/− 十分制约定,各校档位可能不同,请以本校评分细则为准。

使用方法

  1. 在「答对题数」里填这份试卷答对的题数,默认示例是 42。填小数、负数或超过 500 的值都会被拦下并说明允许范围。
  2. 在「题目总数」里填试卷总题数,默认示例是 50。范围是 1 到 500 的整数,填 0 会被拒绝,因为除数为 0 没有意义。
  3. 在「及格线」里填百分制及格线,默认 60。学校按 70% 或 85% 判及格时改这里即可,判定只影响文字结果,不影响得分率。
  4. 点「计算」,或在三个输入框任意一个里按 Enter。结果区给出得分率、字母等级和及格判定,下面一行给出答错题数与每题扣分。
  5. 对照表默认显示 12 行,点「加载更多」补上 F 档一行;「导出 CSV」带 BOM 头,Excel 打开中文不乱码。

这个测试成绩计算器能解决什么

拿到一份批改完的卷子,想知道 42/50 到底是什么水平:输入两个数就得到 84.0% 和 B 档,不用自己按计算器再心算四舍五入。

老师按 +/− 十分制给等级,而你只知道百分比:对照表把 13 个档位的最低得分率和「总 50 题至少答对几题」一次列全,89% 落在 B+、90% 起是 A-,一眼可查。

想评估错题的代价:本页给出每题占 2.00 个百分点(总 50 题时),再错 1 题就掉到 82.0%,直接看出哪道题决定档位。

学校及格线不是 60% 时:把及格线改成 85%,42/50(84.0%)的判定会从「及格」变成「不及格」,两种口径都能对上。

本页只做单份试卷的换算,不做跨科加权平均,也不把等级换算成绩点——跨科平均是平均值计算器的活,等级转绩点属于绩点计算器的口径。本页也不做排名,需要看分数在全体的位置请用百分位计算器。

原理与规则说明

测试成绩计算器只做一步除法再加一次查表:得分率 = 答对题数 ÷ 题目总数 × 100,然后按 +/− 十分制阈值判级。判级比较用整数交叉相乘 答对 × 100 ≥ 总数 × 阈值,而不是先算出小数百分比再比较,原因见下面的精度说明。

为什么判级用原始值而不是四舍五入后的值:显示保留一位小数是给人看的,判级必须用原始商。实测 188/209 = 89.952153%,显示成 90.0%,但原始值小于 90,判 B+ 而不是 A-。如果把显示值拿去判级,这一分就会错档。

为什么阈值取 97/93/90/87/83/80/77/73/70/67/63/60:这是美式学校流传最广的 +/− 十分制档位(A+ 从 97 起,A- 从 90 起,F 低于 60)。它不是某个国家标准,不同学校会把 A- 定在 92 或 93,本页取的是最常见的一组,并把全部 13 档列出来,便于你按本校细则自己对号。

为什么用整数交叉相乘:29 ÷ 100 × 100 在双精度浮点里得到 28.999999999999996 而不是 29,Math.floor 会把它砍成 28。整数乘法 29 × 100 ≥ 100 × 60 不经过小数,没有这个风险。本页 13 档阈值在总题数 ≤ 3000 的全枚举中没有一例被浮点误差击中(0 例),所以这是防御性写法,但成本为零。

及格线判定同样用原始值:得分率 ≥ 及格线 才算及格。84.0% 在及格线 60、70、80 时都及格,在 85 时不及格,判定随输入变化,不会静默按 60 处理。

完整示例(数值仅作演示)

默认输入 42 / 50、及格线 60:得分率 84.0%,字母等级 B(B 档是 83%~86.99%),判定及格。答错 8 题,每题 2.00 个百分点;再错 1 题是 41/50 = 82.0%,掉到 B-;再对 1 题是 43/50 = 86.0%,仍是 B。

把及格线改成 85:同样 42/50 = 84.0%,判定变为不及格,等级仍是 B。这说明等级与及格判定是两条独立的规则,改及格线不会改档位。

换一份 20 题的小测:17/20 = 85.0%,B;18/20 = 90.0%,A-。同样是差 1 题,20 题制每题 5.00 个百分点,比 50 题制的 2.00 更贵,这正是对照表要分两列的原因。

非整除的例子:17/19 = 89.473684%,显示 89.5%,判 B+;23/27 = 85.185185%,显示 85.2%,判 B。显示值四舍五入到一位小数,判级仍按原始商。

输入范围与对照表

答对 / 总数得分率(显示)原始值等级60% 及格线判定
50 / 50100.0%100A+及格
45 / 5090.0%90A-及格
42 / 5084.0%84B及格
39 / 5078.0%78C+及格
30 / 5060.0%60D-及格(正好压线)
29 / 5058.0%58F不及格
18 / 2090.0%90A-及格
17 / 2085.0%85B及格
12 / 2060.0%60D-及格
9 / 1090.0%90A-及格
8 / 1080.0%80B-及格
29 / 3290.6%90.625A-及格
0 / 500.0%0F不及格

输入范围:答对题数 0 到 500 的整数,题目总数 1 到 500 的整数,及格线 1 到 100 的整数。三处任一越界都会给出指明字段和允许范围的提示,不会把非法值改成默认值再算。

常见误用对照:把「答对题数」和「答错题数」填反。42/50 是 84.0%(B),而 8/50 是 16.0%(F),两者差得极远;输入框上限是题目总数,填反时本页会提示「答对题数(8)不能大于题目总数(50)」。

输入范围、边界与精度说明

除数为零直接拒绝:题目总数填 0 时 42 ÷ 0 得 Infinity,本页在除法之前就拦下,提示「题目总数必须是 1 到 500 的整数」,不会显示 Infinity 或 NaN。

浮点回退实测:29 ÷ 100 × 100 得 28.999999999999996,57 ÷ 100 × 100 得 56.99999999999999。Math.floor 会把它们分别砍成 28 和 56,所以本页所有阈值比较都写成 答对 × 100 ≥ 总数 × 阈值 的整数形式。把 13 档阈值与总题数 1 到 3000 全枚举一遍,没有任何一档被这个误差击中(0 例),但整数写法从根上消除了这类风险。

显示与判级的错位有个真实案例:188/209 的原始值是 89.952153%,显示成 90.0%,但判级按原始值得 B+。也就是说「显示 90.0% 却不是 A-」不是 bug,是显示精度与判级精度分离的结果,本页在结果里同时给出原始商,方便核对。

答对题数等于题目总数时得 100.0% 和 A+;答对 0 题得 0.0% 和 F,两条边界都正常出结果,不判非法。答对题数大于题目总数(例如 42/40)会被拒绝,提示两个数的当前值。

每题扣分按 100 ÷ 题目总数 计算,保留两位小数:总 50 题是 2.00 个百分点/题,总 20 题是 5.00 个百分点/题,总 32 题是 3.13 个百分点/题。它只用于估算错题代价,不参与等级判定。

常见误用的正确解释:有人把 89.5% 四舍五入成 90% 就当 A-,这是错的——本页 17/19 = 89.473684%,显示 89.5%,判 B+。四舍五入只发生在显示层,档位归属永远看原始商。

常见问题

89.5% 为什么不是 A-?

因为 89.5% 多数时候是显示值。17/19 的原始商是 89.473684%,四舍五入到一位小数才显示成 89.5%。判级用原始商,89.47 小于 90 的 A- 门槛,所以是 B+。只有原始商真的达到 90.0% 才给 A-。

显示 90.0% 却判了 B+,是算错了吗?

不是。188/209 = 89.952153%,显示时四舍五入到 90.0%,判级按原始值得 B+。结果区同时给原始商,核对一眼就能看出是显示精度的问题,不是档位算错。

改及格线会改变字母等级吗?

不会。等级只由 13 档阈值决定,及格线只影响「及格 / 不及格」这一段文字。42/50 在及格线 85 时等级仍是 B,只是判定从及格变成不及格。

我们学校的 A- 是 92%,怎么办?

本页用的是最常见的 +/− 十分制(A- 从 90 起)。如果本校 A- 定在 92,请把 92 到 96 的分数对照本页 A- 与 A 两档自行判读,对照表把每档的最低答对题数都列出来了,可以直接换算。

题目数上限为什么是 500?

一张标准化试卷超过 500 题的极少见,而且题目数越大,每题的分值越小、四舍五入的影响也越小。500 题以内每题最少占 0.2 个百分点,显示精度足够;需要更大规模可以拆成两份分别算。

能把等级换算成绩点吗?

本页不做。等级到绩点(4.0 制)的映射规则各校不同,属于绩点计算器的口径,本页只给等级本身,避免两套映射互相打架。

为什么及格线要填整数?

及格线是学校公布的整数档位(60、70、85),按整数收口可以避免 59.9 这类边界被误填。得分率本身不受影响,判定时用的是原始商与整数及格线的直接比较。

输入的分数会被上传吗?

不会。全部计算只用浏览器原生的除法、整数比较和 Math.round,没有任何网络请求,可以在开发者工具的 Network 面板确认,页面加载后不会再发出请求。

相关工具

测试成绩计算器只解决「一份卷子的答对题数换算」这一件事,分数相关的其它口径各有专门页面。