当前位置:首页GESP > 正文

13. 在下列代码的横线处填写(),可以使得输出是“20 10”。 (2023年3月 GESP C++ 一级)

作者:野牛程序员:2024-07-18 07:31:57GESP阅读 3525
13. 在下列代码的横线处填写(),可以使得输出是“20 10”。 (2023年3月 GESP C++ 一级)

13. 在下列代码的横线处填写(),可以使得输出是“20 10”。 

#include <iostream>
using namespace std;
int main() {
    int a = 10, b = 20;
    a = ________; // 在此处填入代码; 
    b = a / 100;
    a = a % 100;
    cout << a << " " << b << endl;
    return 0;
}


A. a + b 

B. (a + b) * 100 

C. b * 100 + a 

D. a * 100 + b


正确答案是 D. a * 100 + b


以下是对每个选项的详细分析:

A. a + b

  • a = a + b 相当于 a = 10 + 20,所以 a 变为 30。

  • b = a / 100 相当于 b = 30 / 100,所以 b 变为 0。

  • a = a % 100 相当于 a = 30 % 100,所以 a 变为 30。

  • 输出为 "30 0",不符合要求。

B. (a + b) * 100

  • a = (a + b) * 100 相当于 a = (10 + 20) * 100,所以 a 变为 3000。

  • b = a / 100 相当于 b = 3000 / 100,所以 b 变为 30。

  • a = a % 100 相当于 a = 3000 % 100,所以 a 变为 0。

  • 输出为 "0 30",不符合要求。

C. b * 100 + a

  • a = b * 100 + a 相当于 a = 20 * 100 + 10,所以 a 变为 2010。

  • b = a / 100 相当于 b = 2010 / 100,所以 b 变为 20。

  • a = a % 100 相当于 a = 2010 % 100,所以 a 变为 10。

  • 输出为 "10 20",不符合要求。

D. a * 100 + b

  • a = a * 100 + b 相当于 a = 10 * 100 + 20,所以 a 变为 1020。

  • b = a / 100 相当于 b = 1020 / 100,所以 b 变为 10。

  • a = a % 100 相当于 a = 1020 % 100,所以 a 变为 20。

  • 输出为 "20 10",符合要求。

因此,正确答案是 D. a * 100 + b。


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
  • GESP
  • 最新推荐

    热门点击