変数AとBに格納されているデータを入れ替えたい。データを一時的に格納するための変数をTMPとすると、データが正しく入れ替わる手順はどれか。ここで“x←y”は、yのデータでxの内容を置き換えることを表す。
値の交換は失われる側を先に退避してから代入

選択肢
- アTMP←A → A←B → B←A
- イTMP←A → A←B → B←TMP
- ウTMP←B → A←B → B←TMP
- エTMP←B → A←B → B←A
正解と解説
正解:イ TMP←A → A←B → B←TMP
変数の値を交換するには、上書きで失われる側の値を先に退避させる必要がある。まずTMPにAを保存し、次にAへBを入れ、最後にBへTMPの値を戻せば、両者が入れ替わる。退避せずにBへAを代入すると、その時点でAはすでにBの値になっているため交換に失敗する。
選択肢ごとの解説
- ア最後にB←Aとすると、既に書き換わったAの値が入り交換できない。
- イAを退避してからBを移し、退避した値をBへ戻す正しい手順である。
- ウBをTMPに退避した後にA←Bとすると、Aの元の値が失われる。
- エ退避した値を使わないため、両方が同じ値になってしまう。
同じ分野の他の問題
- 関数isPrimeは、引数として与えられた正の整数が、素数であればtrueを、素数でなければfalseを戻り値とする。例…2026年度 秋期 問85
- 関数calculateAmountOfPrizeは、業務改善の効果における改善額と短縮期間を、それぞれimproveme…2025年度 秋期 問99
- 手続calcMod3を呼び出したときの出力はどれか。 〔プログラム〕 ○calcMod3() 整数型: totalVal…2025年度 秋期 問78
- 関数binaryToIntegerは、1桁以上の符号なし2進数を文字列で表した値を引数binaryStrで受け取り、その…2024年度 秋期 問85
- 関数convertは、整数型の配列を一定のルールで文字列に変換するプログラムである。関数convertをconvert(…2024年度 秋期 問62
最終更新:2026-08-25/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。