C- 언어로 기본 계승 예제 프로그램을 만들려고 노력하고 있지만 작동하는 있지만 다음과 같은 프로그램이 == 비교 연산자와 제대로 작동하지 않는 이유를 이해할 수 없습니다. < = 연산자로 완전히 괜찮습니다.for 루프 (C 언어)에서 비교 연산자
비 기능적 버전 :
#include <stdio.h>
int main()
{
int i, n, fact=1;
printf("Enter a number:");
scanf("%d", &n);
for(i=1; i==n; i++)
{
fact=fact*i;
}
printf("Factorial of %d is %d", n, fact);
return 0;
}
기능 버전 : 사전에 이미
#include <stdio.h>
int main()
{
int i, n, fact=1;
printf("Enter a number:");
scanf("%d", &n);
for(i=1; i<=n; i++)
{
fact=fact*i;
}
printf("Factorial of %d is %d", n, fact);
return 0;
}
감사합니다!
두 번째 명령문이 true 인 경우에만 루프를 시작합니다. '0 == n'은 박쥐 오른쪽에서 거짓입니다. – Mephy
아래에 몇 가지 훌륭한 해답이 있지만 초기 버전이 효과가 있다고 생각하는 이유를 설명하려고하면 이해에 조금 도움이 될 수 있습니다. –