acruxdy   5년 전

실행시켰을 때 출력값에 오류가 나네요 어느 부분을 어떻게 고쳐야 할지 모르겠어요..

hellogaon   5년 전

오류가 나시는 부분은 s라는 SIZE개의 int를 담는 배열을 만드셨는데요.

각각의 배열 칸을 접근하는 방법은 s[0], s[1], s[2] ....가 되어요!

그래서 특정 칸에 수를 입력하고 싶을 경우

11번째 줄의 scanf("%d\n",&s); 가 아닌 scanf("%d",&s[i]); 으로 적어주셔야지 오류가 나지 않아요!

('\n' 또한 빠졌는데 오타가 아닌 이렇게 적는 게 더 일반적이예요. 입력 받을 다음 정수는 s[i]에 넣어준다는 개념이기 때문에 '\n'이 없어도 괜찮아요.

입력이 제대로 이루어 지지 않는 경우가 많으니 꼭 '\n'는 아직 넣지 말아주세요!)

오류가 나지 않더라도 현재 작성하신 코드가 아직은 올바른 답을 출력하지 않을텐데

아마 9개를 입력받은 뒤, 처음 정수를 maximum에 저장해놓고 s[1] ~ s[8]까지와 비교해가면서 maximum을 업데이트하려고 하신 거 같네요!

다음 부분에 관해서 좀 더 생각해보시면 좋을 것 같아요.

  1. 입력을 언제 받아야하는가. 몇 개를 받아야하는가.
  2. 내가 지금 출력하고 있는 i+1은 최대값이 몇번 째수인지를 잘 뜻하는가. 잘 뜻하지 않는다면 이는 무엇을 뜻하는가. 어떻게 고쳐야하는가.

화이팅하세요!

acruxdy   5년 전

네~좋은 답변 감사합니다!

댓글을 작성하려면 로그인해야 합니다.