c语言gpa计算程序
时间: 2024-10-20 21:01:04 浏览: 16
在C语言中编写一个GPA(Grade Point Average,平均绩点)计算程序,需要首先了解基本的用户输入处理、分数转换到绩点规则以及加权平均的计算。以下是一个简单的示例程序,假设每个课程有一个分数(0-100分),并已知绩点对应表:
```c
#include <stdio.h>
// 绩点映射表
const double grade_points[] = {4.0, 3.7, 3.3, 3.0, 2.7, 2.3, 2.0, 1.7, 1.3, 1.0}; // 例如常见的美国大学GPA制度
double calculate_gpa(double score) {
int grade_index;
if (score >= 90) {
grade_index = 0; // A+ 或者 A
} else if (score >= 85) {
grade_index = 1; // A
} else if (score >= 80) {
grade_index = 2; // B+
} else if (score >= 76) {
grade_index = 3; // B
} else {
grade_index = score / 5; // 其他等级(例如:75-70是B-, 69-60是C+, C等)
}
return grade_points[grade_index];
}
int main() {
int num_courses;
printf("请输入您课程的数量:");
scanf("%d", &num_courses);
double total_grade_points = 0.0;
for (int i = 0; i < num_courses; i++) {
double course_score;
printf("请输入第 %d 门课程的成绩(0-100):", i + 1);
scanf("%lf", &course_score);
total_grade_points += calculate_gpa(course_score);
}
double gpa = total_grade_points / num_courses;
printf("您的GPA是: %.2f\n", gpa);
return 0;
}
```
阅读全文