首页 > 解决方案 > 下面的代码是如何工作的?它输出分解的数字并且功能齐全,我只是不明白它是如何做到的

问题描述

我不明白下面的代码是如何工作的。它成功输出了分解的数字,但我想了解它的功能。有人可以解释一下吗?

#include <iostream>
using namespace std;
int main()
{
    int number; //declares variable number
    int n1,n2,n3,n4; //declares four integer variables
    cout << "Please enter a four digit number:"; //outputs message
    cin >> number;

    n1 = number%10;  /* the next eight lines are what i am having trouble understanding */
    number /= 10;
    n2 = number%10;
    number /= 10;
    n3 = number%10;
    number /= 10;
    n4 = number%10;
    number /=10;

    cout << "ones:" << n1 << endl;
    cout << "tens:" << n2 << endl;
    cout << "hundreds:" << n3 << endl;
    cout << "thousands:" << n4 << endl;

    return 0;
}

标签: c++modulus

解决方案


好的,所以n1 = number % 10给你除以十的余数。(如果输入为 2137,则为 7)。之后number/=10意味着与之后的数字相同,number = number/10之后将是 213(因为发生了总除法),下一行基本相同


推荐阅读