見出し画像

C言語であそぼ。 入れ替え、桁を数える

"C 言語"を使ってちょっと気分転換にあそぼう。

2つの数値を入れ替え

入力した2つの数値を入れ替える。単純に

a = b

とすると、"a"に"b"を代入してしまうので"a"も"b"も同じになり"a"が消えてしまいます。

int main(void){

int a = 3;
int b = 9;

a = b;

printf("%d\n",a);
printf("%d",b);
}

"a"も"b"も"9"となります。どうすれば良いかというと"a"の数字を別の変数に入れておきます。例えば

temp = a

という感じに覚えておいてもらいます。そして最後の

b = temp

として入れてやれば入れ替え完了です。

int main(void){

int a = 3;
int b = 9;

int temp = 0;

temp = a;
a = b;
b = temp;

printf("%d\n",a);
printf("%d",b);
  
}

これを実行するとしっかりと入れ替えることができます。


数値の桁数

対象の数字を"10"で割れなくなるまで割っていきます。その割れた回数をカウントすることで桁数がわかります。

"while"を使います。条件として割る数字、ここでは"number"とします。

int number = 12398988;

どうやって桁数を数えていくかというと、

number = number/10;

10で割ってやります。割れるということはまだ桁があるということになりますのでさらに割っていきます。

割れなくなったら終わり。

この割った数をを変数countに入れていきます。

int count = 0;

繰り返しの条件は

number != 0

変数numberが"0"でないこと。この条件でwhileを使って繰り返しをさせます。そして割れたら"++count"でカウント追加して数を数えます。

int main(void){

int number = 12398988;
int count = 0;

while (number != 0){
number = number/10;
  ++count;
}

printf("%d",count);  
  
}

最後に

printf("%d",count);

でcountの数を出力してやれば桁の数がわかります。

この記事が気に入ったらサポートをしてみませんか?