C언어 문제 질문

C언어 문제 질문

작성일 2023.08.31댓글 2건
    게시물 수정 , 삭제는 로그인 필요

C언어 질문 입니다. 문제에서 data[SIZE] 그리고 이중 for문을 사용하고 있잖아요 ? SIZE 는 5이구 SIZE -1 인데 그렇다면 SIZE -1은 5 - 1 for문이 반복해서 실행할때마다 계속 -1 인가요 ?

거기에 더 포함해서 for 문 j 에서 i+1 이니까 SIZE 는 5일거구 data[i] < data [j] 이렇게 되는데 여기서 이해가 되지 않네요. temp = data[j]; data[j] = data [i] ; data[i] = temp ;

제가 이 부분이 이해가 되지 않습니다. 말 그대로 그냥 그 값을 넣어주는것 인가요 ?






#c언어 문제 #c언어 문제 사이트 #c언어 문제 모음 #c언어 문제은행 #c언어 문제 pdf #c언어 문제집 추천 #c언어 문제 만들기 #c언어 문제 예제 #정보처리기사 c언어 문제 #정보처리기사 실기 c언어 문제

profile_image 익명 작성일 -

이건 스왑입니다.

첫 for문인 i같은 경우는 별 문제가 없는데, 두번째 for문인 j 가 i + 1로 시작하기 때문에....

SIZE -1을 안해주면 i의 마지막 4 + 1을 해서 j는 5로 시작하게 되어서 오류가 발생하게 됩니다.

그렇기 때문에 SIZE - 1을 해줍니다.

만약 data[i]가 data[j]보다 크다면... 즉 앞쪽의 숫자가 뒤에 있는 숫자보다 크다면 둘을 바꿔주는겁니다.

하지만 어느 한쪽에 무작정 data[j] = data[i]를 해버리게 되면... 즉 예를 들어 77과 54라고 생각해보죠

77은 54 크기 때문에 밑의 if문이 실행됩니다.

data[j] = data[i]를 그냥 수행하게 된다면 54의 자리에 77을 그냥 넣어버리게 되면 {77, 77, 32, 91, 63}이

됩니다. 54라는 값은 사라지게 되죠

그러므로 temp라는 변수에다가 data[j] 즉 54를 먼저 넣은 이후에 data[j] = data[i]로 변경하게 되면

배열의 값은 {77, 77, 32, 91, 63}이 됩니다. 위와 다르게 temp에는 54라는 값이 남아있습니다.

이 상태에서 temp의 값을 data[i]에다가 넣게 되면 {54, 77, 32, 91, 63}이 되는거죠.

이런 작업을 for문을 돌면서 반복하게 되는겁니다.

profile_image 익명 작성일 -

i : 0 ~ 4

j : i+1 ~ 4

i -> 0

j -> 1~4

77 을 54,32,91,63과 비교해서 77보다 큰 값이 나올 경우 스왑

스왑 후 91,54,32,77,63

i -> 1

j -> 2~4

54를 32,77,63과 비교해서 54보다 큰 값이 나올 경우 스왑

스왑 후 91 77 32 54 63

i -> 2

j -> 3~4

32를 54,63과 비교해서 32 보다 큰 값이 나올 경우 스왑

스왑 후 91 77 63 32 54

i -> 3

j -> 4

32를 54와 비교해서 32보다 큰 값이 나올 경우 스왑

스왑 후 91 77 63 54 32

C언어 문제 질문

이거 어떻게 c언어로 바꾸나요 ? 답좀요 ㅠㅠ 급해요 <> " " " " " " " " ""& " " " " 질문은 댓글 남겨 주세요.

정보 c언어 문제 질문

해당 문제에 해설과 답을 간단히 알려주시면... 링크) > c언어, 파이썬 프로그래밍 됩니다(pc접속시 링크)... 답변이 없길래, 과제쪽으로 한번 본건데..ㅠ 제가 생각한 질문이...

c언어 문제 질문이요

결과가 이렇게 나오려면 어떻게 프로그래밍 해야하나요??? <> "" "" "" "" "" - 정확히 32개까지 완벽

c언어 문제 질문

c 언어 조건 "x가 0또는 1이면"을 올바르게 구현한것 모두 고르시오 1. if(x==0 && x==1) 2. if(x==0 || x==1) 3. if(!(x!=0 &&y!=1)) 4. if(x==0 | x==1) 이중에 몇번이 맞는지 혹시 설명도...

c언어 문제질문

왜 답이 0x5678인지 모르겠어요.. 바이트 크기와 연관있나요? UB라서 무슨 결과가 나오든 정상입니다. 문제 수준이 영 낮네요..