C# 에서는 지역변수에 값을 써넣기 전에 읽으려고 하면 컴파일 에러가 발생합니다.
사람이 판단하기에는 18번째 줄을 처음 만났을 때는 k가 1이므로 20번째 줄이 적어도 1번 실행되기 때문에 j에 값을 써넣은 상태라는 것을 알 수 있지만
C#의 문법 규칙에 따르면 20~30번째 줄은 0번 실행될 가능성이 있는 것으로 봅니다. 이렇게 되면 32번째 줄에서 j를 읽으려고 할 때 j에 값을 써 넣지 않은 상태일 수도 있다고 판단해서 컴파일 에러가 발생합니다.
adfsfsf 5년 전
위가 c#이고, 아래는 c입니다. c코드는 정답처리되었고, c# 쪽은 32번 줄에서 j가 할당되지 않았다고 나옵니다.