输入的第一行包含一个整数 t (1 ≤ t ≤ 104)表示测试用例的数量。 每个测试的描述由一行包含一个整数 n 表示某同学上学年的平均学分绩点 (1.0 <= n < 5.0).C语言
时间: 2024-02-06 16:12:24 浏览: 133
C语言程序 计算所输入的整数n的1到n总和和平均数
这是一道关于学分绩点的问题,根据输入的学分绩点计算出某个同学上学年的总学分,并输出结果。我们可以使用 C 语言编写一个程序来解决这个问题。
代码如下:
```c
#include <stdio.h>
int main() {
int t;
scanf("%d", &t); // 读入测试用例数量
while (t--) {
double n;
scanf("%lf", &n); // 读入学分绩点
int total_credit = 0; // 总学分
for (int i = 1; i <= 10; i++) {
int credit;
scanf("%d", &credit); // 读入每门课的学分
total_credit += credit; // 累加总学分
}
double total_score = n * total_credit; // 总成绩
printf("%.2lf\n", total_score / total_credit); // 输出平均学分绩点
}
return 0;
}
```
我们首先读入测试用例的数量,然后使用 while 循环读入每个测试用例中的学分绩点。在每个测试用例中,我们使用 for 循环读入每门课的学分,并累加总学分。然后,我们将学分绩点和总学分相乘,得到总成绩。最后,我们将总成绩除以总学分,得到平均学分绩点,并输出结果。
需要注意的是,由于学分绩点和总成绩都是小数,所以需要使用 double 类型进行计算。同时,在输出平均学分绩点时,需要使用 "%.2lf" 的格式化字符串,表示保留两位小数。
希望这个代码能够解决你的问题,如果还有其他问题,请随时提问。
阅读全文