2013-06-25 1 views
1

나는 litteraly를 몇 시간 동안 배우고 있었고 지금까지 지식을 테스트하기 위해 Fizzbizz 프로그램을 시험해보고 싶었다. C의 Fizzbuzz 프로그램이 왜 작동하지 않습니까?

내가 쓴 코드 :

#include <stdio.h> 

int main() { 
int i; 
for (i = 1; i <21; i++) { 
    if (i % 3 == 0) { 
     if (i % 5 == 0) { 
      printf("Fizzbuzz\n"); 
     } 
     else { 
      printf("Fizz\n"); 
     } 
    } 
    elseif (i % 5 == 0) { 
     if (i % 3 == 0) { 
      printf("Fizzbuzz\n"); 
     } 
     else { 
      printf("Buzz\n"); 
     } 
    } 
    else { 
     printf("%d", i); 
    } 
} 
return 0; 
} 

컴파일러가

In function 'main': Line 14: error: expected ';' before '{' token

를 반환 그러나 나는 오류가 아주 사소한하지만이 작동하지 않는 이유를 설명 할 수 나는 '경우 의심 적어도 올바른 생각을 가지고 있습니까?

+0

, 두 번째 Fizzbuzz에 못할거야 :

또한, 당신은 아마 수의 경우 줄 바꿈 원하는. – rein

+1

'elseif'가 유효한 키워드가 아니기 때문에, 컴파일러는 함수 호출이라고 합법적으로 가정하고 있습니다.이 함수 호출은 합법적으로'{'. –

답변

1

elseif은 (는) C 키워드가 아닙니다. else if이 필요합니다. 여담으로

printf("%d\n", i); 
6

"elseif"대신 "else if"가 필요하다고 생각합니다.

관련 문제