読者です 読者をやめる 読者になる 読者になる

Game_life_company’s diary

趣味が多めでゲーム中心の人間の雑記

C言語 プログラミング演習 #5 「if文」

どうも!!

みなさん、コンニチワ

GLCOの社長です。

 

今回は条件文の一つである、ifをやっていこうと思います。

 

if文は、「 if(式)文 」として使います。

式を評価して、その値が非であれば、文を実行するというものです。

 

早速、例題をやっていきましょう。

「読み込んだ整数値が5で割り切れなければ、その旨を表示するプログラムを作成せよ。」

------------------------------------------------------------------

#include<stdio.h>
int main(void)
{
int no;
printf("整数を入力してください。: ");
scanf("%d",&no);

if(no%5!=0)
puts("その数は5で割り切れません。");

return 0;

}

 

-------------------------------------------------------------------------------------

整数を入力してください。: 6

その数は5で割り切れません。

 

となりました。

 

「読み込んだ数値が奇数か偶数かを判断するプログラムを作成せよ。」

----------------------------------------------------------------------------------------

#include<stdio.h>

int main(void)
{
int no;

printf("整数を入力してください。:");

scanf("%d",&no);

if(no%2==0)
puts("偶数です。");
else
puts("奇数です。");

return 0;

}

---------------------------------------------------------------------

整数を入力してください。:5

奇数です。

 

となりました。

 

演習3-1

「二つの整数値を読み込んで、後者が前者の約数であれば「BはAの約数です。」と表示し、そうでなければ「BはAの約数ではありません。」と表示するプログラムを作成せよ。」

--------------------------------------------------------------------------------------

#include<stdio.h>
int main(void)
{
int no1,no2;

printf("整数A: ");
scanf("%d",&no1);

printf("整数B :");
scanf("%d",&no2);

if(no1%no2==0)
printf("BはAの約数です。\n");
else
printf("BはAの約数ではありません。\n");

return 0;
}

-----------------------------------------------------

整数A: 47

整数B :5

BはAの約数ではありません。

 

となります。

 

これまではプログラミングの流れを二つに分岐していましたが、今度は、三つに分岐して考える例をやっていきましょう。

 

「整数値を読み込んで、その符号を判定するプログラムを作成せよ。」

--------------------------------------------------------------------------------------

#include<stdio.h>
int main(void)
{

int a;
printf("整数を入力してください。:");
scanf("%d",&a);

if(a==0)
puts("その数は0です。");
else if(a>0)
puts("その数は正です。");
else
puts("その数は負です。");

return 0;
}

----------------------------------------------------------------------

整数を入力してください。:5

その数は正です。

整数を入力してください。:0

その数は0です。

整数を入力してください。:-3

その数は負です。

 

となります。

 

演習3-2

上記のプログラムの最後のelseを、else if(a<0)に変更するとどうなるかを検討せよ。

-----------------------------------------------------------------------

#include<stdio.h>
int main(void)
{

int a;
printf("整数を入力してください。:");
scanf("%d",&a);

if(a==0)
puts("その数は0です。");
else if(a>0)
puts("その数は正です。");
else if(a<0)
puts("その数は負です。");

return 0;
}

-----------------------------------------------------------

整数を入力してください。:-9

その数は負です。

整数を入力してください。:7

その数は正です。

整数を入力してください。:0

その数は0です。

 

となります。

 

演習3-3

「整数値を読み込んで、その絶対値を表示するプログラムを作成せよ。」

-------------------------------------------------------------------------

#include<stdio.h>
int main(void)
{
int no;

printf("整数値を入力してください。:");
scanf("%d",&no);

if(no<0)
printf("絶対値は%dです。\n",-no);
else
printf("絶対値は%dです。\n",no);

return 0;

}

 

------------------------------------------------------------------------

整数値を入力してください。:-9

絶対値は9です。

 

 

となります。

 

演習3-4

「二つの整数値を入力し、大きい方の値を表示するプログラムを作成せよ。」

--------------------------------------------------------------------------

#include<stdio.h>
int main(void)
{
int no1,no2;

printf("二つの整数を入力してください。\n");
printf("整数A: ");
scanf("%d",&no1);

printf("整数B : ");
scanf("%d",&no2);

if(no1<no2)
puts("整数Aは整数Bより小さいです。");

else if(no1>no2)
puts("整数Aは整数Bより大きいです。");

else
puts("整数Aと整数Bは等しいです。");

return 0;
}

 

--------------------------------------------------------------------------

二つの整数を入力してください。

整数A:  45

整数B : 54

整数Aは整数Bより小さいです。

二つの整数を入力してください。

整数A:  45

整数B : 45

整数Aと整数Bは等しいです。

 

二つの整数を入力してください。

整数A:  54

整数B : 45

整数Aは整数Bより大きいです。

 

となります。

 

 

今度は、

「3つの値を入力し大きい数字を格納し表示するプログラムを作成せよ。」

------------------------------------------------------------------------------

#include<stdio.h>

int main(void)
{
int n1,n2,n3;
int max;

puts("3つの整数を入力してください。:");
printf("整数1:");
scanf("%d",&n1);

printf("整数2:");
scanf("%d",&n2);

printf("整数3:");
scanf("%d",&n3);

max=n1;
if(n2>max) max=n2;
if(n3>max) max=n3;

printf("最大値は%dです。\n",max);

return 0;
}

 

---------------------------------------------------------------------

3つの整数を入力してください。:

整数1:45

整数2:34

整数3:42

最大値は45です。

 

*条件演算子

条件演算子とは、

a ? b : c  と書き

aが非0であれば、bを評価した値、そうでなければcを評価した値にするというものです。

 

早速、例題をしていきましょう。

「読み込んだ整数値の差を条件演算子を用いて求めるプログラムを作成せよ。」

----------------------------------------------------------------------

#include<stdio.h>
int main(void)
{
int n1,n2;

puts("二つの整数値を入力してください。:");

printf("整数1 :");
scanf("%d",&n1);

printf("整数2 :");
scanf("%d",&n2);


printf("それらの差は%dです。\n",(n1>n2)?n1-n2:n2-n1);

return 0;
}

---------------------------------------------------------------------

二つの整数値を入力してください。:

整数1 :43

整数2 :34

それらの差は9です。

となりました。

 

 

量が多くなってきたので、一旦ここで切ります。

では、また!