C言語の学習のためにFizzBuzzを実装しようとした
まずは素直に実装
c
1#include <stdio.h> 2 3int main(void) { 4 for (int i = 1; i <= 100; ++i) { 5 if (i%15 == 0) { 6 printf("fizzbuzz\n"); 7 } 8 else if (i%3 == 0) { 9 printf("fizz\n"); 10 } 11 else if (i%5 == 0) { 12 printf("buzz\n"); 13 } 14 else { 15 printf("%d\n", i); 16 } 17 } 18 19 return 0; 20}
関数化したくなった
C言語での実装は思いつかなかったので、Rubyで書いてみた。
ruby
1# ここがサブルーチン 2def fizzbuzz(num) 3 if num % 15 == 0 4 result = "fizzbuzz" 5 elsif num % 3 == 0 6 result = "fizz" 7 elsif num % 5 == 0 8 result = "buzz" 9 else 10 result = num 11 end 12 result 13end 14 15# イメージとしてはここからmain関数 16i = 1 17 18while i <= 100 do 19 puts(fizzbuzz(i)) 20 i = i.succ 21end 22
ここからC言語で書き直そうとする(関数にしようとする)とどうにも上手くいかず、以下のように手が止まってしまいます。
c
1#include <stdio.h> 2型 fizzbuzz(int num) 3{ 4 // 処理 5} 6 7 8int main(void) 9{ 10 int i = 1; 11 12 while(i <= 100) { 13 // 関数呼び出しと標準出力 14 ++i; 15 } 16 17 return 0; 18}
関数化したFizzBuzzをC言語で書く方法を教えてほしいです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2020/11/19 23:28
2020/11/19 23:42
2020/11/19 23:51
2020/11/19 23:58
2020/11/20 21:39
2020/11/20 23:31 編集
2020/11/21 01:17