Fizz-Buzz問題

このエントリーをはてなブックマークに追加
90仕様書無しさん
エディタもデバッガも使わず、いきなり紙にミスなく書き出せといわれたら無難にこう書くな。
"FizzBuzz"が"Fizz"+"Buzz"であることを利用するクレバーな処理は避け
仕様通り4通りの場合わけをきっちり書き、
"Fizz"が5(Five)ではなく3の倍数というのはバグを誘発しそうなので
コード中に撒き散らさずに先頭で判定して変数にぶち込む。

#include <stdio.h>

int main()
{
    int i;
    for(i=0; i<100; i++)
    {
        int fizz = (i % 3 == 0);
        int buzz = (i % 5 == 0);
       
        if(fizz) {
            if(buzz)
                puts("FizzBuzz");
            else
                puts("Fizz");
        } else {
            if(buzz)
                puts("Buzz");
            else
                printf("%d\n", i);
        }
    }
    return 0;
}