1.
#include <stdio.h>
int main(void){
int a,i;
scanf("%d",&a);
for(i=1; i<a; i++)
{
a = a*i;
}
printf("%d",a);
return 0;
}
2.
#include <stdio.h>
int main(void){
int a,i;
scanf("%d",&a);
for(i=a-1; i>0; i--)
{
a = a*i;
}
printf("%d",a);
return 0;
}
만약 둘다 입력이 5일때
1번 코드와 2번코드 둘다 5~1까지 곱하는거는 다를게 없는데 결과가 다르게 나옵니다
1번코드는 -1899959296 가 나오고
2번코드는 정상적으로 120이 나오는데 이유를 모르겠어서 질문드립니다!