Tips

C# 練習問題 5

C# 練習問題 5

C# 練習問題 5


C#のオリジナル練習問題です。

問題①


次のコードを確認してください。

using System;

namespace Blog {
	class Program {
		static void Main(string[] args) {
			int num = 6;
			--num;
			Console.Write(num--);
			Console.Write(num);
		}
	}
}

上記のコードをコンパイル、および実行したときの結果について、正しいものを1つ選択しなさい。

A. 43
B. 44
C. 53
D. 54

問題②


次のコードを確認してください。

using System;

namespace Blog {
	class Program {
		static void Main(string[] args) {
			int num = 0;
			Console.Write(num++);
			Console.Write(++num);
		}
	}
}

上記のコードをコンパイル、および実行したときの結果について、正しいものを1つ選択しなさい。

A. 01
B. 02
C. 11
D. 12

解答・解説を見る

解答


問題①:D
問題②:B

解説


インクリメント演算子デクリメント演算子についての問題です。

変数の値を1増やす「++」をインクリメント演算子、1減らす「」をデクリメント演算子といいます。
これらの演算子を付与するとき、前置の場合と後置の場合で動作が異なります。

前置の場合、インクリメント/デクリメントが行われた後に式が評価されます。
後置の場合、式が評価された後にインクリメント/デクリメントが行われます。

問題①
6行目で変数numに6が代入されます。
7行目の–numにより、numの値は5になります。
8行目のデクリメントは後置のため、「5」が出力された後にnumの値は4になります。
9行目ではnumがそのまま出力されているため、「4」が出力されます。

したがって、「54」と出力されるため、答えはDとなります。

問題②
6行目で変数numに0が代入されます。
7行目のインクリメントは後置のため、「0」が出力された後にnumの値は1になります。
8行目のインクリメントは前置のため、numの値が2となってが出力されます。

したがって、「02」と出力されるため、答えはBとなります。

※ Console.Write()
()の中をコンソール画面に出力します。その際、改行は行われません。
改行を伴う出力はConsole.WriteLine()を使用します。

<<  < 次の問題  前の問題 > >>

[Unity_317×90]

ゲーム制作関連のオススメ連載リンク

とっても手軽なゲーム制作体験!
Unityゲーム開発基礎

実際のリリースゲームを題材にしたハンズオンゲーム制作連載
実践unityゲーム開発

Recent News

Recent Tips

Tag Search