首页 > 试题广场 >

成绩

[编程题]成绩
  • 热度指数:14776 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
\hspace{15pt}牛牛最近学习了 C++ 入门课程,这门课程的总成绩按照如下权重计算:
\hspace{23pt}\bullet\,作业成绩 A20\%
\hspace{23pt}\bullet\,小测成绩 B30\%
\hspace{23pt}\bullet\,期末考试成绩 C50\%
\hspace{15pt}因此,总成绩 S 计算公式为:

\displaystyle S = A \times 20\% + B \times 30\% + C \times 50\%

\hspace{15pt}在本题中,由于我们保证,输入的 A,B,C 均为 10 的倍数,所以总成绩一定是一个整数。输出这个整数。

输入描述:
\hspace{15pt}在一行中输入三个非负整数 A,B,C \left(0 \leqq A,B,C \leqq 100\right),分别表示牛牛的作业成绩、小测成绩和期末考试成绩。且保证 A,B,C 均为 10 的整数倍。


输出描述:
\hspace{15pt}输出一个整数 S,表示牛牛的总成绩,满分为 100
示例1

输入

100 100 100

输出

100

说明

S = 100 \times 20\% + 100 \times 30\% + 100 \times 50\% = 20 + 30 + 50 = 100
示例2

输入

70 80 90

输出

83

说明

S = 70 \times 20\% + 80 \times 30\% + 90 \times 50\% = 14 + 24 + 45 = 83

备注:
本题已于下方时间节点更新,请注意题解时效性:
1. 2025-06-03 优化题面文本与格式。
2. 2025-11-20 优化题面文本与格式。
a,b,c = map(int,input().split())
s = a*0.2+b*0.3+c*0.5
print(f"{s:.0f}")

发表于 2025-11-09 22:27:31 回复(0)
a,b,c=map(int,input().split())
in_0_and_100=all(0<=x<=100 for x in [a,b,c])
mul_of_10=all(x%10==0 for x in [a,b,c])
s=int(a*0.2+b*0.3+c*0.5)
if in_0_and_100 and mul_of_10:
    print(s)
else:
    print('不符合要求')

发表于 2025-10-24 17:47:45 回复(0)
A,B,C = map(int,input().split())

if A < 0:
    print("输入错误,0≦A")
    exit()
if C > 100:
    print("输入错误,C≦100")
    exit()
S = A*0.2 + B*0.3 + C*0.5
print(int(S))
发表于 2025-07-24 09:36:48 回复(0)
A, B, C = map(int, input().split())

S = A * 0.2 + B * 0.3 + C * 0.5

print(round(S))
发表于 2025-07-13 05:03:57 回复(0)