Notas
Parte da seção Fundamentals do Journey de C da Coddy — lição 61 de 63.
Desafio
FácilEscreva um programa para processar notas de alunos. Implemente a seguinte lógica:
calculateAverage: Retorna a média de todas as notas como umfloat.findHighestGrade: Retorna o maior número inteiro encontrado no array.determineLetterGrade: Mapeia as pontuações para letras:- Entre 90-100:
A - Entre 80-89:
B - Entre 70-79:
C - Entre 60-69:
D - Abaixo de 60:
F
- Entre 90-100:
Experimente você mesmo
#include <stdio.h>
// Protótipos de função
float calculateAverage(int grades[], int size);
int findHighestGrade(int grades[], int size);
char determineLetterGrade(int grade);
float calculateAverage(int grades[], int size) {
// TODO: Calcular e retornar a nota média
}
int findHighestGrade(int grades[], int size) {
// TODO: Encontrar e retornar a maior nota
}
char determineLetterGrade(int grade) {
// TODO: Determinar e retornar a nota em letra
}
int main() {
int size;
scanf("%d", &size);
int grades[size];
for (int i = 0; i < size; i++) {
scanf("%d", &grades[i]);
}
// Calcular e exibir a nota média
float average = calculateAverage(grades, size);
printf("Average grade: %.2f\n", average);
// Encontrar e exibir a maior nota
int highest = findHighestGrade(grades, size);
printf("Highest grade: %d\n", highest);
// Exibir a nota em letra para cada nota numérica
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;
}Todas as lições de Fundamentals
2Variáveis
Tipos de DadosInteiroFloat - DoubleCaracteresBooleanosConstantesFundamentos do printfRegras de Nomenclatura de VariáveisConversão de Tipos Parte 1Conversão de Tipos Parte 2Desafio de Recapitulação3Operadores
Operadores AritméticosOperador de MóduloIncremento/DecrementoOperadores de AtribuiçãoOperadores RelacionaisOperadores Lógicos Parte 1Operadores Lógicos Parte 2Operadores Lógicos Parte 3Desafio de Recapitulação