프로그래밍 언어/C언어

C언어 멤버변수로 학생의 이름, 국어 점수, 영어 점수를 입력하여 각각 국어, 영어 점수의 평균을 구하는 프로그램

컨설턴트X 2023. 5. 24. 13:09
728x90
반응형
#include <stdio.h>

struct Student {
    char name[20];
    int koreanScore;
    int englishScore;
};

int main() {
    struct Student students[5];
    int totalKoreanScore = 0;
    int totalEnglishScore = 0;
    
    // 학생 정보 입력 받기
    for (int i = 0; i < 5; i++) {
        scanf("%s %d %d", students[i].name, &students[i].koreanScore, &students[i].englishScore);
        totalKoreanScore += students[i].koreanScore;
        totalEnglishScore += students[i].englishScore;
    }
    
    // 국어 평균 계산 및 출력
    int koreanAverage = totalKoreanScore / 5;
    printf("국어 평균 : %d\n", koreanAverage);
    
    // 영어 평균 계산 및 출력
    int englishAverage = totalEnglishScore / 5;
    printf("영어 평균 : %d\n", englishAverage);
    
    return 0;
}



프로그램은 `Student` 구조체를 정의하여 학생의 이름, 국어 점수, 영어 점수를 멤버 변수로 갖습니다.

먼저, `students` 배열을 선언하여 5명의 학생 정보를 저장합니다. `totalKoreanScore`와 `totalEnglishScore` 변수는 국어 점수와 영어 점수의 합을 저장할 변수로 초기값을 0으로 설정합니다.

그 후, `for` 루프를 사용하여 각 학생의 이름, 국어 점수, 영어 점수를 입력받습니다. 입력 받은 점수를 각각의 합 변수에 누적합니다.

모든 입력이 완료되면, 국어 점수의 평균과 영어 점수의 평균을 계산하여 `avgKoreanScore`와 `avgEnglishScore`에 저장합니다. 이때, 형변환을 사용하여 정수 나눗셈 결과를 실수로 변환하여 평균을 구합니다.

마지막으로, 평균 값을 출력합니다. `printf` 함수를 사용하여 국어 평균과 영어 평균을 각각 출력합니다.

프로그램 실행 시 5명의 학생 정보를 차례로 입력하고, 입력한 학생들의 국어 점수 평균과 영어 점수 평균이 정상적으로 출력됩니다.

728x90
반응형