Project_OKI’s diary

エンジニアの勉強ブログ

C言語基礎知識4(if文)

C言語のifの使い方の学習

1.目的

  • C言語でif文(条件分岐)について理解する。

目次

2.if文とは

 もし、AならばBしろのように、条件によって、処理を変えるためのもの。

 書き方:

     if(条件) { 処理 }

     又は、

     if(条件) 処理(1行のみ)

 複数条件の場合

     if(条件1) {    //条件1を満たすとき処理1を実行

     処理1

     }else if(条件2){  //条件1を満たさず、条件2を満たす時、処理2を実行

     処理2

     }else{  //条件1,2どちらも満たさない時、処理3を実行

     処理3

    }

3.プログラムの作成

if文を使って、変数が1の時処理を実行することを確認する。

#include <stdio.h>
int main(void){
    // Your code here!
    int a = 1;
    int b = 2;
    int c = 3;
    int d = 1;
    
    if(a == 1){//a=1の時処理を実行する。
        printf("a=1の時の処理を実行\n");
    }
    
    if(b == 1){ //b=1の時処理を実行する。
        printf("b=1の時の処理を実行\n");
    }
    
    if(c == 1){//c=1の時処理を実行する。
        printf("c=1の時の処理を実行\n");
    }else{     //c=1ではなかった時処理を実行する。
        printf("*c=1以外の時の処理を実行\n");
    }
    //d=1の時処理を実行する。
    if(d==1) printf("d=1の時の処理を実行\n"); //1行ならば、{}なしで書ける。
}

結果:https://paiza.io/projects/U7GXkxdQuNVt5ca9VUfmeg?language=c

4.プログラム説明

 (1)  if(a == 1){

  変数aの値が1の時、処理を実行することを示している。

 

5.プログラム作成2(for文と組み合わせ、条件分岐) 

#include <stdio.h>
int main(void){
    // Your code here!
    int i,j;
    
    for(i=0;i<5;i++){  //iを0から4まで+1ずつ繰り返し
        if(i<2){ printf("iが2未満の時実行:i=%d\n",i); //iが2未満の時実行 }else if(i == 3){ printf("iが3の時実行\n"); //iが3の時実行 } } for(j=0;j<5;j++){ if(j==2 || j==4 ){ printf("jが2又は4の時実行:j=%d\n",j); } } for(i=0;i<5;i++){ for(j=0;j<5;j++){ if(i==2 && j==3){ printf("i=2かつj=3の時実行:i=%d,j=%d\n",i,j); } if(i==0|| j==4){ printf("i=0又はj=4の時実行:i=%d,j=%d\n",i,j); } } } }

実行結果:https://paiza.io/projects/TngSUutLi19YMjJgLRNJJA?language=c

 

参考:https://brain.cc.kogakuin.ac.jp/~kanamaru/lecture/prog1/05-02.html

 

6.プログラム作成(if elseとif 2個の時の動作の違い)

#include <stdio.h>
int main(void){
    // Your code here!
    int i,j;
    
    for(i=0;i<4;i++){
        if(i==2){
            printf("i=2の時実行:i=%d\n",i);
        }else if(i<5){
            printf("iが5未満の時実行:i=%d\n",i);  //iが2の時は、実行されない。
        }
    }
    
    printf("\n"); //分かりやすいように改行
    
    for(j=0;j<4;j++){
        if(j==2){
            printf("j=2の時実行:j=%d\n",j);
        }
        if(j<5){
            printf("jが5未満の時実行:j=%d\n",j);  //jが2の時も実行される。
        }
    }
}

実行結果:https://paiza.io/projects/wDyONsGdxkwTn6iOdCDJ9w?language=c

 

関連記事

記事一覧:

C言語

組み込みの為のC言語基礎知識1(printf) - Project_OKI’s diary

C言語基礎知識2(for分で処理を繰り返す) - Project_OKI’s diary

C言語基礎知識3(配列) - Project_OKI’s diary

C言語基礎知識4(if文) - Project_OKI’s diary

C言語基礎知識5(switch文) - Project_OKI’s diary

知らないと損するお金の話(ふるさと納税、確定申告とワンストップ納税どっちが得?) - Project_OKI’s diary

組み込みC言語基礎知識6(関数) - Project_OKI’s diary

組み込みC言語基礎知識7(構造体1) - Project_OKI’s diary

 

参考

dotinstall.com