while 중첩문 질문...
갤쓰리
구구단 출력하는 프로그램인데요
여기서 빨간색부분의 j값 왜 1로 설정을 해야되는지 모르겠습니다.
책에서는 새로운단을 출력하기 위해서라는데
그러면 굳이 int 값 j 값을 0대신 1을 줘도 되는데
그렇게 출려을 하니까 2단만 출력되더라구요..
왜그렇게 되는지 이해좀 시켜주세요#include stdio.h
int main(void)
{
int i=2;
int j=0;
while(i10)
{
j=1;
while(j10)
{
printf(%d*%d=%d \n, i, j, i*j);
j++;
}
i++;
}
}
-
스릉흔다
#include stdio.h
int main(void)
{
int i=2;
int j=1;
while(i10)
{
while(j10)
{
printf(\%d*%d=%d \\n\ -
재마루
변수 선언에 int j = 0; 에서 j 값을 왜 1이 아닌 0으로 주냐고 물어보셨죠??
어떤 값을 줘도 상관이 없습니다. 어차피 첫번째 while 문 아래에 j = 1 로 다시 초기화가 되니깐요.
처음에 0으로 초기화를 하는 이유는 관습이나 습관 정도라고 생각하세요.^^
0으로 지정하면 왠지 초기화를 했다고 생각이 드니깐요 ^^; (너무 억지인가 ^^;) -
거늘
답변감사합니다.^^
-
나슬
while(i 10) 안에서 j = 1;이라고 초기화해주지 않으면 2단을 출력한 뒤에
j의 값이 10이 되고 while(j 10)의 조건문을 만족하지 못하여서 그 뒤로 아무런 출력이 없게 됩니다.