P1307 数字反转

这道题一开始想使用循环,求模运算,求整运算来计算,但是发现在没有数组的情况下,有零的时候必须判断零是在新建成的数前面还是在中间,是否有过多个零,而直接输出后无法判断,所以就看了题解,采用大佬的方法。自己理解会:

代码:

#include<iostream>
#include<cstdio>
#include <algorithm>
using namespace std;
int n,k;
int main()
{
    scanf("%d",&n);
    while(n)
    {
        k=k*10+n%10;
        n=n/10;
    }
    printf("%d",k);
}

这道题中

1.不管是正数还是负数,都是包含在里面的,k是新生成的数,不断地乘10再加上n求模运算的值。

2.中间循环一直到当n还有值不等于0的时候。

 

posted @ 2019-11-10 17:05  yangln17  阅读(196)  评论(0)    收藏  举报