어디가 잘못됐을까요...
그림자
질문 제목 : 어디가 잘못됐을까요...조건문 관련 질문질문 내용 :
#include stdio.h
int m, n;
int input()
{
printf(첫번째 정수를 입력하세요 (m) : );
scanf(%d, &m);
printf(두번째 정수를 입력하세요 (n) : );
scanf(%d, &n);
return 0;
}
int circulate(int m, int n)
{
if (m = 0, n 0)
{
n = n+1;
printf(%d입니다., n);
return 0;
}
else if (m 0, n == 0)
{
m = m-1;
n = 1;
return m, n;
}
else
{
m = m-1;
return m, circulate(m, n-1);
}
}
int main()
{
input();
circulate(m, n);
}
왜 무조건 처음에 입력한 n에 1을 더한 값만 출력되는거죠 ㅠㅠ
그리고 잘못된거같다 싶은 부분 좀 얘기해주세요 ㅠㅠ
-
퍼리 2023-08-13
저렇게 선언한 변수를 전역변수라고 합니다. main함수에만 속하지 않고 모든 함수에서 사용할두 있도록 하는거죠
-
맞손질 2023-08-13
궁금한게 int m,n 선언을 {} 안에 해야하는거 아닌가요?
-
달 2023-08-13
어...그래요 ?!
-
꽃내음 2023-08-13
return 으로 두개의값을 반환할수없죠 ..
-
라 2023-08-13
함수 A에서 만약 m=0이면 A(m,n)은 n+1
n=0이면 A(m,n)=A (m-1, 1)
둘다 아니면 A(m,n)=A (m-1, A(m,n-1))
m,n 을 입력받아 결과값을 출력해야되요 ,,, -
블1랙캣 2023-08-13
소스를 이해 못하겠는데, 뭐하는 소스입니까?
-
라일락 2023-08-13
circulate (int m, int n) 부분에 넣어서 함수 다시 한바퀴 돌 때 쓰는 걸로 알고있는데요... 초보라 ㅠㅠ
그러니까 만약 m=3 이고 n=6이면 circulate (3,6)으로 함수 한 바퀴 도는거... -
악당 2023-08-13
return m, n
은 무슨 뜻이죠? -
유1혹 2023-08-13
고치고 나니까 printf 부분이 안돼요 ㅠㅠ
그냥 바로
계속하려면 아무 키나 누르십시오...라고 떠요 -
누리봄 2023-08-13
m = 0, n 0 === m==0 && n0
m 0, n == 0 === m0 && n==0
처럼 쓰셔야 합니다.