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

Game_life_company’s diary

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

C言語 プログラミング演習 #9 「while文」

どうも、皆さん

お久しぶりです。 なかなか忙しくてブログを継続的に書けませんでした。

申し訳ないです。

 

今回は、「while文」をやって行きたいと思います。

while文はプログラムをループさせる条件文の一つです。

 

では、早速例題をやって行きましょう。

「読み込んだ整数値を0までカントダウンするプログラムを作成せよ。」

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

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

while(no>0){
printf("%d ",no);
no--;
}
printf("\n");
return 0;
}

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

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

5 4 3 2 1

となりました。

 

while(条件式){

 

 

}

でループ文を作ることができます。

 

早速、演習問題をやって行きましょう。

演習4-3

「負の値を読み込んだ時に改行文字を表示しないように、上記の例題のプログラムをかきかえろ。」

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

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

if(no>0){
while(no>0){
printf("%d ",no);
no--;
}
printf("\n");
}
return 0;
}

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

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

となりました。

 

演習4-5

「読み込んだ正の数字まで1からカウントアップ、かつ読み込んだ数字が0以下の場合は改行を行わない。」

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

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

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

if(no>0){
while(no>i){
printf("%d ",i++);

}
printf("\n");
}
return 0;
}

 

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

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

1 2 3 4 5 

となりました。

 

演習4-6

「読み込まれた整数値以下である正の偶数を順に表示するプログラムを作成せよ。」

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

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

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

if(no>0){
while(no>=2*i){
printf("%d ",2*i);
i++;
}
printf("\n");
}
return 0;
}

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

正の整数を入力してください:19

2 4 6 8 10 12 14 16 18 

となりました。

 

演習4-7

読み込まれた整数値以下である正の2のべき乗の数を順に表示するプログラムを作成せよ。」

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

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



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

if(no>0){
while(no>i){
printf("%d ",i);
i=i*2;
}
printf("\n");
}

return 0;
}

 

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

正の整数値を入力してください。:19

2 4 8 16

となります。

 

演習4-9

「読み込んだ値の個数だけ+とーを交互に表示するプログラムを作成せよ。

なお、0以下に整数が入力された場合は何も表示しないこと。」

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

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

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

if(no<0)
printf("正の値を入力してください。\n");

else
while(no>=i){
if(i%2==0)
putchar('-');
else
putchar('+');

i++;
}
printf("\n");
return 0;
}

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

正の整数値の値を入力してください。:13

+-+-+-+-+-+-+

となります。

 

演習4-10

「読み込んだ整数値の個数だけ*を縦に連続して表示するプログラムを作成せよ。

なお、0以下の整数が入力された場合は、何も表示しない。」

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

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

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

if(no>0){
while(no>i){
putchar('*');
printf("\n");
i++;
}
}
return 0;
}

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

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

*

*

*

となりました。

 

演習4-11

「正の整数値を入力して、その数字を逆から読み込み書き換えるプログラムを作成せよ。」

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

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

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

while(no>0){
i=no%10;
printf("%d",i);
no=no/10;
}
printf("\n");
return 0;
}

 

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

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

54321

となりました。

 

演習4-12

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

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

#include<stdio.h>
int main(void)
{
int no;
int i=0;
int a;


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

if(no<0)
printf("整数値を入力してください:");

while(no>0){
no=no/10;
i++;
}
printf("%dは%d桁です。\n",a,i);
return 0;
}

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

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

1234は4桁です。

 

となりました。

 

今回のwhile文は以上になります。

 

おつかれ様でした。