跪求C++高手帮我 详细的 讲解下面的程序

来源:百度知道 编辑:UC知道 时间:2024/05/12 13:07:55
在C++中的一程序 作用是把用户输入的数字 反方向显示
void main()
{int digit,num;
cout <<"输入一整数:";
cin >>num;
cout <<"反方向显示结果:";
while(num!=0)
{digit=num%10;
num=num/10;
cout<<digit;}
cout<<endl;
}
生成的是:输入一整数:123456
反方向显示结果:654321

主要的就是while循环语句后面的不理解 到底while 是怎么循环的呢
还有就是digit=num%10和 num=num/10 到底什么意思啊
大侠们上面可是有2个问题的 帮帮忙啊

digit=num%10;取余数操作,每次求出个位上的数字,比如123%10 =3

num=num/10;因为每次求出一个个位上的数,然后将整个数字小数点向前移动一位,这样小数部分被省略,原数字的十位变成了个位。这样操作为了能够逆序的求出每一位上的数字,用于输出。

digit=num%10 取余
num=num/10 除法后舍弃小数位取整