Board logo

標題: [iKnow]3_基本輸入與輸出 [打印本頁]

作者: may    時間: 前天 17:05     標題: [iKnow]3_基本輸入與輸出

C++ 基本輸入輸出選擇題 (共 10 題)
第 1 題
下列哪個選項可以讓 C++ 使用者輸入一個整數並儲存在變數 x 中?
(A) cin >> x;
(B) cout << x;
(C) scanf("%d", x);
(D) print(x);

答案: (A)

說明:
cin >> x; 是 C++ 標準輸入的正確語法,cin 代表輸入流,>> 運算子將輸入的值存入 x。


第 2 題
下列哪個選項可以讓 C++ 程式輸出 "Hello, World!"?
(A) cout >> "Hello, World!";
(B) cout << "Hello, World!"
(C) print("Hello, World!");
(D) cin << "Hello, World!";

答案: (B)

說明:
printf("Hello, World!"); 是 C 語言與 C++ 都適用的輸出函數,也是正確的寫法,但不在選項內。


第 3 題
C++ cin 預設使用哪種方式讀取輸入數據?
(A) 逐字元讀取
(B) 逐單詞讀取 (遇到空白、換行、Tab 停止)
(C) 逐行讀取 (直到換行符號 \n)
(D) 逐數字讀取

答案: (B)

說明:
cin >> 預設會讀取單詞,遇到空白、換行或 Tab 會停止讀取。若要讀取整行,可使用 getline(cin, str);。


第 4 題
以下哪一個 C++ 指令可以讀取一整行輸入?(課外題)
(A) cin.getline(str, 100);
(B) getline(cin, str);
(C) scanf("%s", str);
(D) cin >> str;

答案: (B)

說明:
getline(cin, str); 也是 C++ 標準庫的函數,可以讀取整行輸入 (包括空白),直到遇到換行符號。

第 5 題
若執行以下程式碼並輸入 "123 456",變數 a 和 b 會存入什麼值?
int a, b;
cin >> a >> b;
(A) a = 123, b = 456
(B) a = 123456, b = 0
(C) a = 123, b = 0
(D) a = 123, b = garbage value

答案: (A)

說明:
cin >> a >> b; 會先讀取 123 並存入 a,再讀取 456 並存入 b,遇到空白會自動忽略。


第 6 題
C++ cin 在遇到哪種情況時會失敗 (輸入錯誤)?
(A) 使用者輸入了額外的空格
(B) 使用者輸入非數字給 int 變數
(C) 使用者輸入的數值超過變數範圍但仍為數字
(D) B 和 C 皆正確

答案: (D)

說明:
如果 cin 讀取 int 但使用者輸入非數字,或輸入的數字超出 int 可表示的範圍,cin 會進入錯誤狀態,導致後續輸入失敗。

第 7 題
執行以下程式碼時,若使用者輸入 "apple banana",變數 str1 和 str2 會存入什麼值?
string str1, str2;
cin >> str1 >> str2;
(A) str1 = "apple", str2 = "banana"
(B) str1 = "apple banana", str2 = ""
(C) str1 = "apple", str2 = "apple"
(D) str1 = "banana", str2 = "apple"

答案: (A)

說明:
cin >> str1 >> str2; 會先讀取 "apple" 並存入 str1,再讀取 "banana" 存入 str2,遇到空白會自動分隔。


第 8 題
執行以下程式碼時,若輸入 "Hello World",變數 str 會存入什麼值?
string str;
getline(cin, str);
(A) "Hello"
(B) "World"
(C) "Hello World"
(D) "" (空字串)

答案: (C)

說明:
getline(cin, str); 會讀取整行輸入,包括空格,直到換行符號,因此 str 會存入 "Hello World"。


第 9 題
執行以下程式碼時,輸出結果是?
cout << "3 + 4 = " << 3 + 4 << endl;
(A) 3 + 4 = 3 + 4
(B) 3 + 4 = 7
(C) 3 + 4 =
(D) 7

答案: (B)

說明:
cout << "3 + 4 = " << 3 + 4; 會先輸出 "3 + 4 = ",然後計算 3 + 4 的值為 7,最終輸出 "3 + 4 = 7"。


第 10 題
執行以下程式碼時,若輸入 "42",輸出結果是?
int x;
cin >> x;
cout << "You entered: " << x << endl;
(A) You entered: 42
(B) You entered: x
(C) x entered: 42
(D) 42 entered: You

答案: (A)

說明:
使用 cin >> x; 讀取 42 存入 x,然後 cout 輸出 "You entered: 42"。


這 10 題涵蓋 C++ 基本輸入 (cin)、輸出 (cout)、getline()、數據讀取邏輯及錯誤處理等概念,適合新手學習與測試理解能力。




歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://istak.org.tw/seed/) Powered by Discuz! 7.2