C言語版FizzBuzz

Delphi のアドベントカレンダーは、ネタがないしなあ、と思っていたら pik さんが手頃なネタを作ってくれたのでいくつか入れました。ホントは twitterコードゴルフよろしく、140文字以内を目指して……とか考えていたのですが、twitter の仕様変更で英数字が280文字制限に拡張されたせいで、あまり制限が厳しくなくなってしまいました。なので、ここでブログとして書きます。

……というか、ちょっと前まで FizzBuzz の仕様を間違えてました^_^;(いや演習やるときは、こういうのじゃないんですよ^_^;;)
今日は本当は別のネタを用意していたのですが、とりあえずやり直しやすいC言語に変更します。スミマセン_o_

i;main(){for(;i++<100;puts(i%5?"":"Buzz"))printf(i%3?i%5?"%d":"":"Fizz",i);}

※参考)ideone.com

これ以上短く……なると思います^_^; なお、警告が出そうなところを修正して、もう少し読みやすくしたバージョン。

#include <stdio.h>
int main(void)
{
    for (int i = 1; i <= 100; i++)
    {
        if (i % 3 > 0 && i % 5 > 0) 
            printf("%d", i);
        if (i % 3 == 0) 
            printf("Fizz");
        puts(i % 5 > 0 ? "" : "Buzz");
    }
    return 0;
}

参考)ideone.com

ってか、明日からの分も作りなおさなきゃ……orz