成绩
本课属于 Coddy C 学习旅程的“基础知识”单元。第 61 课,共 63 课。
挑战
简单编写一个处理学生成绩的程序。实现以下逻辑:
calculateAverage:返回所有成绩的平均值,类型为float。findHighestGrade:返回数组中的最大整数。determineLetterGrade:将分数映射为等级字母:- 90-100:
A - 80-89:
B - 70-79:
C - 60-69:
D - 低于 60:
F
- 90-100:
亲手试试
#include <stdio.h>
// 函数原型
float calculateAverage(int grades[], int size);
int findHighestGrade(int grades[], int size);
char determineLetterGrade(int grade);
float calculateAverage(int grades[], int size) {
// TODO: 计算并返回平均成绩
}
int findHighestGrade(int grades[], int size) {
// TODO: 找出并返回最高成绩
}
char determineLetterGrade(int grade) {
// TODO: 确定并返回字母等级
}
int main() {
int size;
scanf("%d", &size);
int grades[size];
for (int i = 0; i < size; i++) {
scanf("%d", &grades[i]);
}
// 计算并显示平均成绩
float average = calculateAverage(grades, size);
printf("Average grade: %.2f\n", average);
// 找出并显示最高成绩
int highest = findHighestGrade(grades, size);
printf("Highest grade: %d\n", highest);
// 显示每个数字成绩对应的字母等级
printf("\nStudent Grades:\n");
for (int i = 0; i < size; i++) {
char letterGrade = determineLetterGrade(grades[i]);
printf("Student %d: %d - %c\n", i+1, grades[i], letterGrade);
}
return 0;
}基础知识中的所有课
自己练习: C 在线编译器