考虑以下用于反转给定整数中的数字以获得新整数的程序片段。令 n = D1D2…Dm
int n, rev;
rev = 0;
while (n > 0)
{
rev = rev*10 + n%10;
n = n/10;
}
第 i 次迭代结束时的循环不变条件为:
(A) n = D1D2….Dm-i 和 rev = DmDm-1…Dm-i+1
(B) n = Dm-i+1…Dm-1Dm 和 rev = Dm-1….D2D1
(C) n != 转
(D) n = D1D2….Dm 和 rev = DmDm-1…D2D1答案:(一)
说明:循环 one by 从 n 的最后一位开始向 rev 添加数字。它还从左侧开始从 n 中删除数字。
这个问题的测验