ITパスポート試験 テクノロジ系 練習問題 第88問: 手続の外で宣言した整数型の変数xに5を代入してから、次の擬似言語の手続をprocB、procAの順に呼び出した。ここで、手続の中で宣言した変数は、その手続の中だ
この科目 –/135 解いた
中級推定正答率 約 51%
手続の外で宣言した整数型の変数xに5を代入してから、次の擬似言語の手続をprocB、procAの順に呼び出した。ここで、手続の中で宣言した変数は、その手続の中だけで有効で、手続の外の同じ名前の変数とは別の変数とする。また、手続の中で宣言していない変数は、手続の外で宣言した変数を指す。二つの手続の処理が終わった後に、手続の外でxを参照したときの値はどれか。 ○procA() x ← x + 1 ○procB() 整数型: x x ← 20
解答と解説を先に見る
正解: 1. 6
問題文の注記のとおり、手続の中で宣言した変数はその手続の中だけで有効なローカル変数、手続の外で宣言した変数はどの手続からも参照できるグローバル変数として扱われる。procBは自分の中で整数型の変数xを宣言しているので、x ← 20 はprocBのローカル変数xへの代入となり、外のxは5のままである。procBの処理が終わると、このローカル変数は参照できなくなる。procAはxを宣言していないので、x ← x + 1 は外のxに作用し、xは6になる。21はprocBのxを外のxと同じ変数とみなした値、20はprocAのxだけをローカル変数とみなした値、5は両方の手続のxをローカル変数とみなした値である。
関連キーワード: ローカル変数・グローバル変数・擬似言語・手続
模試 (100問)
この問題が解けたら、本試験はどうですか?本番形式で、ほかの科目もまとめて確かめる
本番形式の模擬試験で実力チェックPremium (月480円)Premium (ご利用中)本番と同じ制限時間
広告
解いた後に読みたい解説記事
通信講座も検討するなら
PRオンスク.JP入門
公式 →※ 編集方針に基づく厳選。A8.net 等のアフィリエイトリンクを含みます。