第19985题
判断用于判断整数是否为对称数的C++代码的相关说法正确的是哪一项?

以下C++代码用于判断输入的整数是否为对称数,如1221、12321是对称数,123、972不是对称数。请判断关于该代码的说法正确的是:

cin >> N;
newNum = 0;
while(N) {
    newNum = newNum * 10 + N % 10;
    N = N / 10;
}
if(newNum == N)
    cout << N << "为对称数";
A

代码没有语法错误,如果N为对称数,第8行将能正确输出

B

代码没有语法错误,但如果N为负数,将导致死循环。

C

代码存在语法错误,程序不能被执行。

D

代码没有语法错误,但不能达到预期目标,因为循环结束后N总为0。