본문 바로가기
C and C++/C and C++ Examples

[C Examples] struct과 pointer를 활용한 선수별 점수 출력하기

by Henry Cho 2023. 10. 2.
728x90

struct과 pointer를 활용한 선수별 점수 출력하기

포스트 난이도: HOO_Intern


# Example codes

이번 포스트에서는 struct과 pointer를 활용하여 선수별 점수를 출력하는 예제코드를 살펴볼 수 있다. 아래의 예제코드를 살펴보면 struct과 더불어 각 선수의 아이디를 입력받아 저장하는데, 이 과정에서 포인터를 활용하여 데이터가 저장되는 걸 알 수 있다. 여기서 추가적으로 아이디를 입력했을 때 중복 여부를 확인할 수 있는 조건 블록을 작성해 줄 수도 있다. 포인터를 확실히 익혀야 다음 단계로 넘어갈 수 있기 때문에 아래의 예제코드를 통해서 포인터와 struct 사용에 대해서 확실히 이해하고 넘어가도록 하자.

#include <stdio.h>

// Define the Player structure
struct Player {
    int number;
    int points;
};

// Function prototypes
void getPlayerInfo(struct Player*);
void showInfo(struct Player);
int getTotalPoints(struct Player[], int);

int main() {
    // Create an array of 4 Player structures
    struct Player players[4];

    // Get player information from the user
    for (int i = 0; i < 4; i++) {
        printf("\nPLAYERS #%d\n", i + 1);
         printf("---------\n");
        getPlayerInfo(&players[i]);
    }

    // Display the table of player information
    printf("    NUMBER            POINTS SCORED\n");
    for (int i = 0; i < 4; i++) {
        showInfo(players[i]);
    }

    // Calculate and display the total points earned by all players
    int totalPoints = getTotalPoints(players, 4);
    printf("\nTOTAL POINTS: %d\n", totalPoints);

    return 0;
}

// Function to get player information from the user
void getPlayerInfo(struct Player *p) {
    printf("Player's four digit ID: ");
    scanf("%d", &p->number);
    printf("Points scored: ");
    scanf("%d", &p->points);
}

// Function to display player information
void showInfo(struct Player p) {
    printf("%12d | %13d\n", p.number, p.points);
}

// Function to calculate the total points earned by all players
int getTotalPoints(struct Player players[], int count) {
    int total = 0;
    for (int i = 0; i < count; i++) {
        total += players[i].points;
    }
    return total;
}

Figure1. Result


# github link

[Temp]


# 참고 포스트

https://whoishoo.tistory.com/663

 

[C Examples] struct을 활용한 영화 정보 출력하기

struct을 활용한 영화 정보 출력하기 포스트 난이도: HOO_Intern # Example codes 이번 포스트에서는 C에서 struct을 어떻게 사용할 수 있는지를 살펴볼 수 있다. 아래의 예제코드는 간략한 영화 데이터를 st

whoishoo.tistory.com


 

728x90

댓글