함수 이해
뿡뿡몬
질문 제목 : 함수 이해질문 요약 :2의 3승은 8입니다.
이해가 안되서요... 빨간부분 풀면 result = result *x 인데 x가 2이면 result가 뭔가요? 위에 for문이 0,1,2니까 3개라서 2를 3번곱해서 8이란건가요? 단순히 result에 3넣으면 6나오는거 아닌가요..
설명 좀 해주세요 멍청해서 ㅜㅜ
질문 내용 :
#includestdio.h
int get_integer(void);
int power(int x,int y);
int main(void)
{
int a,b;
a=get_integer();
b=get_integer();
printf(%d의 %d승은 %d입니다. \n,a,b,power(a,b));
return 0;
}
int get_integer(void)
{
int n;
printf(정수를 입력하시오:);
scanf(%d,&n);
return n;
}
int power(int x,int y)
{
int i;
long result =1;
for(i=0; iy; i++)
result*=x;
return result;
}
-
솔길
power(a,b)
power(int x ,int y)
power함수에 a와 b의 값을 넘겨주고 x와 y로 받았죠.
x = a
y = b 가 됩니다.
long result = 1 // result의 자료형은 long이고 값은 1입니다.
for문 0부터 y-1 번까지 돌겠죠.
result *= x; 이건 result = result * x를 줄여서 표현한 것입니다.
대입 해보면 1 = 1 * x가 되겠네요.
for문이 y-1번 반복할때까지 계 -
파랑새
2를 3번 곱해서 8이 맞습니다.
2승째에 2x2가 되고
3승째에는 result값의 2x2값인 4가 들어가 있습니다. 그 4랑 2를 곱하는거죠. 그래서 2의 3승