Learn-c-by-examples-swapping-two-numbers-using-variable

提供:Dev Guides
移動先:案内検索

Cの変数を使用して2つの数値を交換する

多くの場合、プログラマは2つの変数の値を交換する必要があります。 ここでは、2つの整数変数の値を交換する方法を学習します。これにより、任意のタイプの値の交換につながる可能性があります。 変数間の値は2つの方法で交換することができます-

  • 3番目の(temp)変数の助けを借りて
  • 一時変数を使用しない

ここで最初の方法を学び、2番目の方法のリンクを確認します:/learn_c_by_examples/swapping_two_numbers_without_using_variable [ここをクリック]。

アルゴリズム

解決策を段階的に描く方法を見つけましょう-

START
   Var1, Var2, Temp
   Step 1 → Copy value of Var1 to Temp
   Step 2 → Copy value of Var2 to Var1
   Step 3 → Copy value of Temp to Var2
STOP

疑似コード

上記のアルゴリズムから、このプログラムの擬似コードを描くことができます-

procedure swap(a, b)

   set temp to 0
   temp ← a
   a ← b     //a holds value of b
   b ← temp  //b holds value of a stored in temp

end procedure

実装

上記のアルゴリズムのC実装はこのように見えるはずです-

#include <stdio.h>

int main() {
   int a, b, temp;

   a = 11;
   b = 99;

   printf("Values before swapping - \n a = %d, b = %d \n\n", a, b);

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

   printf("Values after swapping - \n a = %d, b = %d \n", a, b);
}

出力

このプログラムの出力は次のようになります-

Values before swapping -
 a = 11, b = 99

Values after swapping -
 a = 99, b = 11