zoukankan      html  css  js  c++  java
  • UVA10018 Reverse and Add

    问题链接:UVA10018 Reverse and Add基础训练题,用C语言编写程序。

    题意:输入测试用例数n,然后输入n个正整数,加上其逆序的整数,如果和不是回文数则对和求逆序整数与和相加,直到变为回文整数为止,最少做一次加法,最后输出加法次数和回文数。

    程序中,计算逆序整数的功能,封装到函数reverse(),主程序逻辑变得简单。

    使用函数封装功能,使得程序功能逻辑局部化,程序更加简洁易懂。

    AC的C语言程序如下:

    /* UVA10018 Reverse and Add */
    
    #include <stdio.h>
    
    unsigned int reverse(unsigned int n)
    {
        int rev = 0;
    
        while(n){
            rev = rev * 10 + n % 10;
            n /= 10;
        }
    
        return rev;
    }
    
    int main(void)
    {
        int n, count;
        unsigned p, rev;
    
        scanf("%d", &n);
        while(n--) {
            scanf("%d", &p);
    
            rev = reverse(p);
            p += rev;
            count = 1;
            rev = reverse(p);
            while(p != rev) {
                p += rev;
                count++;
                rev = reverse(p);
            }
    
            printf("%d %u
    ", count, p);
        }
    
        return 0;
    }


  • 相关阅读:
    5 静态链接和动态链接
    4 程序编译与链接
    3.死锁
    2.调度算法
    1 select,poll和epoll
    python语言特性
    python动态规划
    python语言编程算法
    链表
    认识黑客常用的入侵方法
  • 原文地址:https://www.cnblogs.com/tigerisland/p/7564536.html
Copyright © 2011-2022 走看看