题目链接:https://www.starrycoding.com/problem/158
题目描述
已知一个梯形的上底 a a a,下底 b b b和高 h h h,请求出它的面积(结果保留两位小数)。
输入格式
第一行一个整数 T T T表示测试用例个数。 ( 1 ≤ T ≤ 10 ) (1 \le T \le 10) (1≤T≤10)
对于每组测试用例:
三个数字(可能是小数) a , b , h ( 0 < a , b , h ≤ 1 0 9 ) a, b, h(0 < a, b, h \le 10^9) a,b,h(0<a,b,h≤109)
输出格式
对于每组测试用例,输出一个整数表示答案。
输入样例1
10
9.44 0.43 7.67
6.11 39.00 14.00
18.40 1.17 23.00
4.30 15.50 46.00
1.00 14.50 8.90
2.70 7.50 87.00
19.50 10.11 4.50
4.78 15.50 12.50
15.00 6.12 9.60
5.17 12.40 1.80
输出样例1
37.85
315.77
225.06
455.40
68.98
443.70
66.62
126.75
101.38
15.81
题解
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
const ll p = 1e9 + 7;
const int N = 1e5 + 9;
ll a[N];
void solve()
{
double a, b, h;
cin >> a >> b >> h;
// 梯形的面积 = (上底 + 下底) * 高 / 2
cout << fixed << setprecision(2) << (a + b) * h / 2 << '\n';
}
int main()
{
ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
int _;
cin >> _;
while (_--)
solve();
return 0;
}
提交记录:https://www.starrycoding.com/submission/5166