GESP C++ 真题 · 逐题精解
首页C++一级真题 › 2024年12月 › 第15题

GESP 2024年12月 C++一级 单选题 第15题

C++一级单选题2024年12月第15题

所属知识点:while / do-while 循环 难度要求:掌握 考频:高频

下面 C++ 代码用于判断输入的整数是否为位增数,即从首位到个位逐渐增大,是则输出 1。如 123 是一个位增数。下面横线处应填入的是( )。 ---
int N;
int n1,n2;

cin >> N;

___________________;
while(N){
    n1 = N % 10;
    if(n1 >= n2){
        cout << 0;
        return 1;
    }
    n2 = n1, N /=10;
}

cout << 1;

cout << endl;
return 0;

正确答案:D

题目解析
进入循环前先给 n2 初值(最低位)并从 N 去掉,填 n2 = N%10, N /= 10;之后循环不断比较更高位 n1 与上一位 n2,选 D。 💡 逐位比较前要先「初始化上一位」。%10 取末位、/=10 去末位。

想系统刷完 GESP C++ 1~8 级真题,并查看每道题的逐题精讲?

进入 GESPPASS 开始练习