(초보) C언어 도와주세요ㅠㅠ

조회수 425회

문제는 성적표 출력이란 제목이고

첫째 줄에 데이터의 개수 n (3<=n<=100)과 출력인원 m (1<=m<=n)이 공백으로 구분되어 입력된다.

둘째 줄부터 학생 이름과 점수(0 100)가 공백으로 구분되어 입력된다.

단 이름의 길이는 최대 10바이트 이내이다.

출력 : 상위 m명의 학생명단을 출력한다.

인데요

제가 짠 코드는

#include <stdio.h>

#include <string.h>

struct student {
    char name[100];
    int score[100];
};

int main() {

    int n, m = 0;
    int tmp, tmp1 = 0;

    struct student s[100];

    scanf("%d %d", &n, &m);

    for (int i = 0; i < n; i++) {
        scanf("%s %d", &s[i].name, &s[i].score);    
    }

    for (int i = 0; i < n; i++) {
        if (s[i].score > s[i + 1].score) {
            tmp = s[i].score;
            s[i].score = s[i + 1].score;
            s[i + 1].score = tmp;

            strcpy(tmp1, s[i].name);
            strcpy(s[i].name, s[i + 1].name);
            strcpy(s[i + 1].name, tmp1);
        }
    }

    for (int i = 0; i < m; i++) {
        printf("%s\n", s[i].name);
    }
}

이거 인데 실행을 돌려보면 아무것도 안뜨고 그냥 꺼지네요...ㅠㅠ 어디가 문제인지 모르겠어요ㅠㅠㅠ

  • (•́ ✖ •̀)
    알 수 없는 사용자

1 답변

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)