FizzBuzz - Soft Forum P.C. Club

簡単な記述

#include <stdio.h>

int main(int argc, const char *argv[]) {
  int i, n = 100;
  for (i = 1; i < n; ++i) {
    if (i % 15 == 0){
      // 15の倍数のとき(3かつ5の倍数)
      printf("FizzBuzz\n");
    } else {
      if (i % 3 == 0) {
        // 3の倍数のとき
        printf("Fizz\n");
      } else {
        if (i % 5 == 0) {
          // 5の倍数のとき
          printf("Buzz\n");
        } else {
          // それ以外
          printf("%d\n", i);
        }
      }
    }
  }
  return 0;
}

0がfalseになることを利用したもの

#include <stdio.h>

int main(int argc, const char *argv[]) {
  int i, n = 100;
  for (i = 1; i < n; ++i) {
    if (i % 15){
      if (i % 3) {
        if (i % 5) {
          printf("%d\n", i);
        } else {
          printf("Buzz\n");
        }
      } else {
        printf("Fizz\n");
      }
    } else {
      printf("FizzBuzz\n");
    }
  }
  return 0;
}

Soft Forum P.C. Club