平均绩点计算方法:(课程学分1*绩点+课程学分2*绩点+课程学分n*绩点)/(课程学分1+课程学分2+课程学分n) 用户循环输入五分制成绩和课程学分,输入‘-1’时结束输入,计算学生平均绩点。
时间: 2023-05-29 11:02:41 浏览: 278
以下是Python实现:
```python
points = [] # 用于存储每门课程的学分和绩点
credits = [] # 用于存储每门课程的学分
while True:
score = float(input("请输入五分制成绩(输入-1结束):"))
if score == -1:
break
credit = float(input("请输入课程学分:"))
points.append(credit * (score - 2) / 20) # 根据绩点公式计算并存储每门课程的绩点
credits.append(credit)
gpa = sum(points) / sum(credits) # 根据平均绩点公式计算学生平均绩点
print("学生的平均绩点为:", gpa)
```
以上程序循环输入五分制成绩和课程学分,并根据绩点公式计算每门课程的绩点,最后根据平均绩点公式计算学生平均绩点并输出。
相关问题
平均绩点计算方法:(课程学分1*绩点+课程学分2*绩点+.....+课程学分n*绩点)/(课程学分1+课程学分2+….+课程学分n)用户循环输入五分制成绩和课程学分,题目测试数据保证至少有一组或以上合法数据输入。输入’-1’时结束输入,计算学生平均绩点
好的,这是一个计算学生平均绩点的问题,我可以帮你解答。
首先,你需要用一个循环语句来实现用户循环输入五分制成绩和课程学分的功能。每次循环,你需要提示用户输入成绩和学分,并将它们存储在相应的变量中。当用户输入-1时,你需要退出循环。
接下来,你需要根据用户输入的成绩,计算相应的绩点。根据题目要求,五分制成绩和绩点的对应关系如下:
成绩 | 绩点
---- | ----
5 | 4.3
4 | 4.0
3 | 3.0
2 | 2.0
1 | 1.0
0 | 0
然后,你需要根据计算公式,计算学生的平均绩点。具体来说,你需要将每门课程的课程学分乘以相应的绩点,然后将它们相加,再除以所有课程的学分之和。
最后,你需要输出学生的平均绩点。可以使用printf函数来实现。下面是一个C语言的示例代码,供你参考:
```c
#include <stdio.h>
int main() {
int score, credit, total_credit = 0;
double grade_point, total_grade_point = 0.0;
printf("请输入五分制成绩和课程学分(输入-1结束输入):\n");
while (1) {
scanf("%d", &score);
if (score == -1) {
break;
}
scanf("%d", &credit);
total_credit += credit;
switch (score) {
case 5:
grade_point = 4.3;
break;
case 4:
grade_point = 4.0;
break;
case 3:
grade_point = 3.0;
break;
case 2:
grade_point = 2.0;
break;
case 1:
case 0:
grade_point = 1.0;
break;
default:
printf("非法输入,请重新输入!\n");
continue;
}
total_grade_point += grade_point * credit;
}
if (total_credit == 0) {
printf("没有输入有效数据!\n");
} else {
double average_grade_point = total_grade_point / total_credit;
printf("学生的平均绩点为:%.2f\n", average_grade_point);
}
return 0;
}
```
希望这个解答能够帮助到你,如果还有其他问题,请随时提出。
平均绩点计算方法:(课程学分1绩点+课程学分2绩点+课程学分n*绩点)/(课程学分1+课程学分2+课程学分n) 用户循环输入五分制成绩和课程学分,输入‘-1’时结束输入,计算学生平均绩点
以下是Python代码实现:
credit_list = [] # 课程学分列表
grade_list = [] # 成绩列表
while True:
credit = input("请输入课程学分(输入-1结束输入):")
if credit == '-1':
break
grade = input("请输入五分制成绩:")
credit_list.append(float(credit))
grade_list.append(float(grade))
total_credit = sum(credit_list) # 总学分
weighted_sum = 0 # 加权绩点之和
for i in range(len(credit_list)):
# 计算每门课的绩点
if grade_list[i] >= 90:
point = 4.0
elif grade_list[i] >= 85:
point = 3.7
elif grade_list[i] >= 82:
point = 3.3
elif grade_list[i] >= 78:
point = 3.0
elif grade_list[i] >= 75:
point = 2.7
elif grade_list[i] >= 72:
point = 2.3
elif grade_list[i] >= 68:
point = 2.0
elif grade_list[i] >= 64:
point = 1.5
elif grade_list[i] >= 60:
point = 1.0
else:
point = 0.0
weighted_sum += credit_list[i] * point
gpa = weighted_sum / total_credit # 平均绩点
print("该学生的平均绩点为:{:.2f}".format(gpa))
阅读全文