다음 코드는 math.h 라이브러리와 마찬가지로 pow()
을 구현하는 코드입니다. 잘 나는 두 가지 질문이 있습니다printf() 전에 scanf()를 실행하는 방법
- 이유는 scanf() 문가의 printf() 함수에서
"power:"
를 인쇄 전에 입력을 취하고있다? 계산 된 전력이 22235645654789787978797797 (예 :)과 같이 큰 정수의 거듭 제곱을 계산하는 방법은 무엇입니까? 어떻게 계산하고 인쇄합니까? 이미지는 변수
n
의 입력을 볼 수 있습니다에서
#include <stdio.h>
unsigned long long int pow(unsigned long long int n,unsigned long long int d);
int main(){
unsigned long long int a,x,n;
printf("Number:");
scanf("%u\n",&a);
printf("power:");
scanf("%u\n",&n);
x = pow(n,a);
printf("%u\n",x);
}
unsigned long long int pow(unsigned long long int n,unsigned long long int d){
if(n+1==1)
return 1;
return d*pow(n-1,d);
}
그래서 상관없이 사용자가 입력 할 것을 입력의 printf()에서
"power:"
를 인쇄하기 전에 입력을 복용하지 않습니다.
제발 이해해주세요. 제안 및 의견을 기다립니다.
첫 번째 질문 대답 된 검사 두 번째 당신이 찾아야한다 (또는 쓰기). –
[\ [this \]] (http://stackoverflow.com/a/21860015/1620779) 답변을 참조하십시오. – sjsam
[\ [this \]] (http://stackoverflow.com/questions/21859277/behaviour-of-scanf-when-newline-is-in-the-format-string) 질문의 가능한 복제본. – sjsam