我已經很費力地學習了C幾小時,並想嘗試一個Fizzbizz程序來測試我的知識到目前爲止。爲什麼C中的這個Fizzbuzz程序不能工作?
這是我寫的代碼:但是編譯器返回
In function 'main': Line 14: error: expected ';' before '{' token
#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;
}
我懷疑的錯誤是很微不足道,但你能解釋爲什麼它不工作,如果我至少有正確的想法?
順便說一句,你永遠不會得到第二Fizzbuzz。 – rein
因爲'elseif'不是一個有效的關鍵字,所以編譯器假定它是一個函數調用,它不能立即跟隨一個'{'。 –