작성
·
215
0
int compute_pow(int base, int exp)
{
int i, result = 1;
for (i = 0; i < exp; ++i)
result *= base;
return result;
}
int main()
{
int base, exp, result;
while (scanf("%d %d", &base, &exp) == 2)
{
result = compute_pow(base, exp);
printf("Result = %d\n", result);
}
return 0;
}
코드가 이렇게 있습니다. 헷갈리는 스코프가 바로
result = compute_pow(base, exp)
while (scanf("%d %d", &base, &exp) == 2)
int compute_pow(int base, int exp)
여기에 쓰인 base와 exp인데요
result = compute_pow(base, exp)
while (scanf("%d %d", &base, &exp) == 2)
이 두개의 base, exp와
int compute_pow(int base, int exp)에서의 base, exp는
int compute_pow(int base, int exp) 함수에서 result와
main함수에서의 result가 관계 없는 것 처럼
관계 없죠?? 그냥 전체를
int compute_pow(int b, int e)
{
int i, result = 1;
for (i = 0; i < e; ++i)
result *= b;
return result;
}
int main()
{
int base, exp, result;
while (scanf("%d %d", &base, &exp) == 2)
{
result = compute_pow(base, exp);
printf("Result = %d\n", result);
}
return 0;
}
이렇게 해도 문제없이 실행 되어서요