Engineerの研鑽

メインはプログラミング系ブログ(本の要約とかもします)

質問はCONTACTやコメントでお願い致します。

【体で覚えるC言語】関数を使ってプログラムを実装してみよう

f:id:yukiyukiponsu:20190412193139j:plain

 

こんにちは! ゆきぽんずです

 

C言語って難しいですよね

 

今日は、そのC言語の関数についての内容となっています

 

本記事の内容
  • C言語の関数の使い方を実践を通して理解
  • 実際にコードを作成してみる

以上です

 

今回のキーワードは、C言語関数です

 

早速本題に入っていきます

 

関数を使ってプログラムを実装してみよう(C言語

関数を使ってプログラムを実装してみよう(C言語)

C言語の関数を教科書を読んで、理解しようとしていませんか?

 

 教科書を読むだけで理解するのは、非常に難しいと思います

 

なぜなら、わかるとできるは全く違うからです

 

自分で考えずに受け入れた知識は身につきません

 

その知識を自分のものとするためには、「自分がどうやったらその知識が使えるか」まで、落とし込んで考える必要があります

 

そのために今回は関数を使った練習問題を用意しています

 

C言語を体で覚えていきましょう

プログラムを作成してみよう

練習問題

呼び出されると、それまでに呼び出された回数を答える関数 HowManyTimes () 関数を作りなさい。また、HowManyTimes () を for 文を使って任意の回数呼び出す main () 関数を作りなさい。

 

この練習問題は少し難しいので、自分で考えられそうな人は自分で考えて実装してみてください

 

何も手をつけられないという人は、まず答えを見て、答えを理解するところから始めましょう

 

この下に答えを書いているので、ご自分のタイミングで見てください

練習問題の答え

ファイル名 : q9_1.c

#include <stdio.h>
#include <stdlib.h>

//HowManyTimes関数の宣言
void HowManyTimes();

//外部変数に指定
int n = 0;

int main(int argc, char **argv){
  int max;
  int i;

  //コマンド引数のチェック
  //要素が2つでないと、エラーを返す
  if(argc != 2){
    fprintf(stderr, "ERROR : The number of arguments is wrong\n");
    return 1;
  }

 //コマンド引数の要素の2つ目が1より大きくないとエラーを返す
  max = atoi(argv[1]);
  if(max < 1){
    fprintf(stderr, "ERROR : more than 0\n");
    return 1;
  }

//任意の回数 HowManyTimes関数を繰り返す
  for(i=0; i<max; i++)
  HowManyTimes();

  return 0;
}

//呼び出された回数を答える HowManyTimes関数
void HowManyTimes(){
  n++;
  printf("呼び出した回数 : %d回目\n", n);
}

 

以上をコンパイルして、実行します

 

コンソール

q9_1.exe 3

 

結果

呼び出した回数 : 1回目
呼び出した回数 : 2回目
呼び出した回数 : 3回目

 

以上のようになったはずです

 

今日の内容は以上です

 

プログラミングには近道は無いので、毎日コツコツ行っていきましょう!

 

今日も読んでくださりありがとうございます

 

あなたのそばにゆきぽんず