2014年3月4日火曜日

FizzBuzz

前回のエントリで文字列を表示するために使った方法の応用編です

      1 #include <stdio.h>
      2
      3 int main(void) {
      4     int end = 36, i;
      5
      6     for (i = 1; i <= end; i++)
      7     printf("%d\n\0  Fizz\n\0Buzz\n\0FizzBuzz\n" + ((!(i % 3) + !(i % 5) * 2)) * 6, i);
      8
      9     return(0);
     10 }

そこそこトリッキーなコードですが、いちおうFizzBuzzとして正常に動作します

C言語の文字列がわかる人ならおそらく説明は必要ないでしょう
また若干ポインタの理解も要求されます

ただ全体的に見てそんなに難しい使い方ではないでしょう

0 件のコメント:

コメントを投稿