게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
C언어 문제점을 찾아주세요.
게시물ID : programmer_17321짧은주소 복사하기
작성자 : 성덕썬
추천 : 0
조회수 : 391회
댓글수 : 5개
등록시간 : 2016/05/22 14:41:48
제목 없음.png

위 결과를 봤을 때

빨간 줄 쳐둔 것 처럼

정렬이 끊겨서 되는 것 같습니다.

이게 중복 검사에서 발생하는 문제인지

오름차순 정렬에서 발생하는 문제인지 모르겠습니다.

1
2
3
4
5
6
7
8
9
for (i = 0; i < ea; i++)
    for (j = 0; j < 6; j++) {
        choicenum[i][j] = rand() % 44 + 1;
        for (k = 0; k < j; k++)
            if (choicenum[i][j] == choicenum[i][k]) {
                j--;
                break;
            }
    }
cs

일단 위 코드에서 난수 생성 후 중복 체크를 하고

1
2
3
4
5
6
7
8
for (i = 0; i < ea; i++)
    for (j = 0; j < 5; j++)
        for (k = j + 1; k < 6; k++)
            if (choicenum[i][j] > choicenum[i][k]) {
                tmp = choicenum[i][j];
                choicenum[i][j] = choicenum[i][k];
                choicenum[i][k] = tmp;
            }
cs

결과를 출력하기 전 오름차순 정렬을 합니다.

그런데 결과 값이 이상하게 나오니 정말 답답하네요.
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호