成績
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オンラインコンパイラ