Menu
CoddyTech

Điểm số

Thuộc phần Nền tảng cơ bản trong hành trình C của Coddy. Bài học 61 trên 63.

challenge icon

Thử thách

Dễ

Viết chương trình xử lý điểm của học sinh. Triển khai logic sau:

  • calculateAverage: Trả về điểm trung bình của tất cả điểm dưới dạng float.
  • findHighestGrade: Trả về số nguyên lớn nhất trong mảng.
  • determineLetterGrade: Ánh xạ điểm số sang chữ cái:
    • Từ 90 đến 100: A
    • Từ 80 đến 89: B
    • Từ 70 đến 79: C
    • Từ 60 đến 69: D
    • Dưới 60: F

Tự làm thử

#include <stdio.h>

// Khai báo nguyên mẫu hàm (function)
float calculateAverage(int grades[], int size);
int findHighestGrade(int grades[], int size);
char determineLetterGrade(int grade);

float calculateAverage(int grades[], int size) {
    // TODO: Tính và trả về điểm trung bình
}

int findHighestGrade(int grades[], int size) {
    // TODO: Tìm và trả về điểm cao nhất
}

char determineLetterGrade(int grade) {
    // TODO: Xác định và trả về điểm chữ
}

int main() {
    int size;
    scanf("%d", &size);
    int grades[size];
    
    for (int i = 0; i < size; i++) {
        scanf("%d", &grades[i]);
    }
    
    // Tính và hiển thị điểm trung bình
    float average = calculateAverage(grades, size);
    printf("Average grade: %.2f\n", average);
    
    // Tìm và hiển thị điểm cao nhất
    int highest = findHighestGrade(grades, size);
    printf("Highest grade: %d\n", highest);
    
    // Hiển thị điểm chữ tương ứng với từng điểm số
    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;
}

Tất cả bài học trong Nền tảng cơ bản

Tự luyện tập: Trình biên dịch C online