zoukankan      html  css  js  c++  java
  • 1158: 零起点学算法65——进制转换

    1158: 零起点学算法65——进制转换

    Time Limit: 1 Sec  Memory Limit: 64 MB   64bit IO Format: %lld
    Submitted: 1068  Accepted: 615
    [Submit][Status][Web Board]

    Description

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

    Input

     

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

    Output

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

    Sample Input

     
    7 2
    23 12
    -4 3

    Sample Output

    111
    1B
    -11
    

    Source

     
     1 #include<stdio.h>
     2 int main(){
     3     int n,r,a[100];
     4     while(scanf("%d%d",&n,&r)!=EOF){
     5         int flag=1,i=0;
     6         if(n<0){
     7             flag=0;
     8             n=-n;
     9         }
    10         
    11         do{
    12             a[i++]=n%r;
    13             n=n/r;
    14         }while(n);
    15         
    16         if(flag==0)
    17         printf("-");
    18         while(i--){
    19             if(a[i]>9){
    20                 printf("%c",'A'+a[i]-10);
    21             }
    22             else{
    23                 printf("%d",a[i]);
    24             }
    25         }
    26         printf("
    ");
    27     } 
    28     return 0;
    29 } 
  • 相关阅读:
    继承
    redis面试题收集
    spring知识点
    jvm类加载
    jvm回收机制
    HashMap和ConcurrentHashMap
    java基础
    spring-quartz整合
    alibaba-sentinel-1.8变化
    springcloud执行流程理解图
  • 原文地址:https://www.cnblogs.com/dddddd/p/6685172.html
Copyright © 2011-2022 走看看