#include #include // 関数宣言 static int fizzbuzz_response_length(int n); int main() { int n; int response_length = 0; int i = 0; while(i++ < 5) { // Dengklek が言った整数を入力 (void)scanf("%d", &n); // fizzbuzz_response_length関数を呼び出して、応答の文字数を取得 response_length = response_length + fizzbuzz_response_length(n); } // 結果を表示 printf("%d\n", response_length); return 0; } // fizzbuzz_response_length 関数 int fizzbuzz_response_length(int n) { int ret=0; if ( n % 3 == 0 && n % 5 == 0) { // "FizzBuzz" の文字数は 8 ret=8; } else if (n % 3 == 0) { // "Fizz" の文字数は 4 ret=4; } else if (n % 5 == 0) { // "Buzz" の文字数は 4 ret=4; } else { // 整数をそのまま返す場合、その整数の文字数を計算 char buffer[20]; // 十分に大きなバッファを用意 (void)snprintf(buffer, 20, "%d", n); ret=(int)strlen(buffer); } return ret; }