‹ 上一题 下一题 ›

g2-03312. GESP-2级-2025-06-单选-第14题 未做

判断一个数是否为自守数。自守数的定义是如果一个数的平方其尾数与该数相同,则为自守数,如 25 的平方是 625,其尾数是 25,所以 25 是自守数。相关说法错误的是( )。

int N, N1, M1;
cout << "输入一个正整数:";
cin >> N;
N1 = N, M1 = N * N;
bool Flag = true;
while (N1 > 0){
    if (N1 % 10 != M1 % 10){
        Flag = false;
        break;
    }
    else{
        N1 = N1 / 10, M1 = M1 / 10;
    }
}
if (Flag == true)
    printf("%d的平方是%d,是自守数", N, N * N);
else
    printf("%d的平方是%d,不是自守数", N, N * N);
  • A. 如果 Flag 在循环中不被改为 false,则说明该数是自守数
  • B. 代码 if (N1 % 10 != M1 % 10) 用于判断其个位数是否相等,如果不等,则表明不是自守数
  • C. 代码 N1 = N1 / 10, M1 = M1 / 10 将个位数去掉
  • D. 将 N1 > 0 改为 N > 0 效果相同
未选择
输入
输出

            
答案