if文から はじめてみよう。

アレサ「


さあ、if文のしくみについて見ていきましょう。」



#include <stdio.h>


int main(void) {


if (5 > 1)

printf("論理式5>1が真の値1をもつことによりprintfが発動しました。\n");


return 0;

}


コンパイル結果


論理式5>1が真の値1をもつことによりprintfが発動しました。




この場合if(5>1)つまり論理式5>1は真の値1をもち


if(5>1)はif(1)をあらわしています。


このように、if文は


if( ) の( )の中の論理式が真の値1をもつとき


if( ) につづく命令文を実行します。


ですので


論理式5>1


(条件式5>1ともよばれます。)


のようなものをかかずに


直接、数値1をif( ) に代入しても


次のプログラムのように


if(1)に続く命令文は実行されます。


#include <stdio.h>


int main(void){


if(1)

printf("Hello,World\n");


return 0;

}


コンパイル結果

Hello,World


いかがです


if文の発動条件がおわかりいただけましたでしょうか。


では、


if( )の()の中が0だった場合どうなるでしょうか?」


・・・・・・・・・・・・・・・


そのころ マックスたちは


マックス 「わははは、どうだ、これがfloat大根だ」


float float float

float float float

float float float float float


float大根が山のように積まれている。


ソーラー 「わ~~こっちのint人参もなかなかのものだよ~」


int int int int int int int int int

int int int int int int int int int


二人は とれたてC畑で収穫に夢中でした。


マックス 「ビタミンC-、おいC~~~」


・・・・・・・・・・・・・・・


 アレサ

「if(0)の場合はどのようにif文が実行されるかをみていきましょう。」


ソーラー「おいC~~~~~~~~~~~~~」


アレサ

「#include <stdio.h>


int main(void){


if(0)

printf("論理式の値は0です\n");


return 0;

}


コンパイル結果

続行するには何かキーを押してください_


このコンパイル結果のように


if()の()に0が代入されていると


if(0)に続く命令文 printf("論理式の値は0です\n");


は全く実行されず、よって\n、改行もされず


一行目から


続行するには何かキーを押してください_


が表示されます。


つまり


if()の()の中が偽の値0ならばif文は実行されないわけですね。」


・・・・・・・・・・・・・・・・・・


ソーラー「このint人参を搾ってジュースにしてみよう!」


マックス 「おおっ それはいいな~~」


・・・・・・・・・・・・・・・・・・


アレサ 「ところで


もしif( )の()の中が5や-1などの数値なら


if文はどのように実行されるでしょうか?


次のプログラムを実行してみましょう。


#include <stdio.h>


int main(void){


if(5)

printf("論理式の値は1です\n");


if(-1)

printf("論理式の値は1です\n");

return 0;

}


コンパイル結果


論理式の値は1です

論理式の値は1です


このように0以外の数値をif()のなかの()に代入したときは


その数値は真の値1が代入されたときと同様に


if文は実行されます。」


マックス 「ごくっ ごくっ

ああ~おいちぃぃぃ~~」


アレサ「さすがに


if( )の()のなかに ひらがな あ などを打ち込むと


コンパイル結果


(EAZY IDECの場合)


ファイル「C:/Users/solarplexus/AppData/Local/EasyIDEC/project/wwwwwww/main.c」の

「5行目」で記述エラーを発見しました。

unrecognized character \x82


ビルド結果(Visual studioの場合)

エラー (アクティブ) E0020 識別子 "あ" が定義されていません 5

エラー C2065 'あ': 定義されていない識別子です。



のように


コンパイルエラーがでます。」


マックス 「ここほれ、わお~~~ん~~~


わお~~~~んんんんんん」


アレサ「なにか・・・・声がきこえたような・・・


きのせい・・・かしら・・・」





今日のおまけコーナー


マックスさんたちは収穫に一生懸命のようです。


その間に


アヴェ・マリア別versionC2


https://youtu.be/zcmnmebRTfY


マリア・パーフェクト C3をアップロードいたしました。


https://youtu.be/GDH0qex9qFM


お楽しみください

  • Twitterで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます