zoukankan      html  css  js  c++  java
  • 基础练习 十六进制转八进制

    http://lx.lanqiao.org/problem.page?gpid=T51
    基础练习 十六进制转八进制  
    时间限制:1.0s   内存限制:512.0MB
          
    问题描述
      给定n个十六进制正整数,输出它们对应的八进制数。
    输入格式
      输入的第一行为一个正整数n (1<=n<=10)。
      接下来n行,每行一个由0~9、大写字母A~F组成的字符串,表示要转换的十六进制正整数,每个十六进制数长度不超过100000。
    输出格式
      输出n行,每行为输入对应的八进制正整数。
    注意
      输入的十六进制数不会有前导0,比如012A。
      输出的八进制数也不能有前导0。
    样例输入
    2
    39
    123ABC
    样例输出
    71
    4435274
    提示
      先将十六进制数转换成某进制数,再由某进制数转换成八进制。
     
    分析:
     
    直接模拟进制转换即可、
     
    AC代码:
     
     1 #include<iostream> 
     2     #include<cstdio>  
     3     #include<cstring>  
     4     using namespace std;  
     5     char s[100010];  
     6     int change(int m,int n)  
     7     {  
     8         int res=0;  
     9         for(int i = m; i <= n; i++)  
    10         if(s[i]>'9') res = res * 16 + s[i] - 'A' + 10;  
    11         else res = res*16 + s[i] -'0';  
    12         return res;  
    13     }  
    14     int main()  
    15     {  
    16         int n,i;  
    17         cin>>n;  
    18         while(n--)  
    19         {  
    20             scanf("%s",s);  
    21             int len = strlen( s ) ;  
    22             int index=0;  
    23             bool flag = true;  
    24             if(len % 3 == 1)  
    25             printf("%o",change(0,0)), flag = false,index = 1;  
    26             if(len % 3 == 2)  
    27             printf("%o",change(0,1)), flag = false,index = 2;  
    28             for(i = index; i < len; i+=3)  
    29             {  
    30                 if(flag)  
    31                 {  
    32                     flag = false;  
    33                     printf("%o",change(i,i+2));  
    34                 }  
    35                 else  
    36                 {  
    37                     printf("%04o",change(i,i+2));  
    38                 }  
    39             }  
    40             cout<<endl;  
    41         }  
    42         return 0;  
    43     }
    View Code
  • 相关阅读:
    Pandas获取本地csv文件到内存中
    波士顿房价数据集可视化
    tensorflow之数据集调用(波士顿房价数据集)
    查单词
    censoring
    字符串大师
    Parity game
    前缀和
    String
    Seek the Name, Seek the Fame
  • 原文地址:https://www.cnblogs.com/jeff-wgc/p/4450215.html
Copyright © 2011-2022 走看看