zoukankan      html  css  js  c++  java
  • 进制转换

    首先,判断n的大小,然后调用函数求出各个权的值,分别求权,在输出

              fun(n/r,r);
              printf("%c",n%r > 9 ? n%r-10+'A':n%r+'0');

    题目描述

    输入一个十进制数N,将它转换成R进制数输出。

    输入

    输入数据包含多个测试实例,每个测试实例包含两个整数N(32位整数)和R(2<=R<=16, R<>10)。

    输出

    为每个测试实例输出转换后的数,每个输出占一行。如果R大于10,则对应的数字规则参考16进制(比如,10用A表示,等等)。

    样例输入

    7 2 23 12 -4 3

    样例输出

    111 1B -11

    #include<stdio.h>
    void fun(int n,int r)
    {
         if(n)
         {
              fun(n/r,r);
              printf("%c",n%r > 9 ? n%r-10+'A':n%r+'0');
         }
        
    }
    int main()
    {
       int n,r;
       while( ~scanf("%d%d",&n,&r) )
       {
          if(n>0)
             fun(n,r);
             else if(n==0)
                   putchar('0');
          else if(n<0)
          {
                putchar('-');
                fun(-n,r);
          }
          puts("");
       }
       return 0;
    }

  • 相关阅读:
    如何通过Restful API的方式读取SAP Commerce Cloud的Product图片
    Permute Digits
    Browser
    Jamie and Alarm Snooze
    Perfect Squares
    Color the ball
    Stars
    1086. Tree Traversals Again (25)
    1085. Perfect Sequence (25)
    1083. List Grades (25)
  • 原文地址:https://www.cnblogs.com/zsj576637357/p/2257361.html
Copyright © 2011-2022 走看看