Menu
CoddyTech

成绩

本课属于 Coddy C 学习旅程的“基础知识”单元。第 61 课,共 63 课。

challenge icon

挑战

简单

编写一个处理学生成绩的程序。实现以下逻辑:

  • calculateAverage:返回所有成绩的平均值,类型为 float。
  • findHighestGrade:返回数组中的最大整数。
  • determineLetterGrade:将分数映射为等级字母:
    • 90-100:A
    • 80-89:B
    • 70-79:C
    • 60-69:D
    • 低于 60:F

亲手试试

#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 在线编译器