| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 621 人关注过本帖
标题:十六进制转八进制
取消只看楼主 加入收藏
xqylaile
Rank: 1
等 级:新手上路
帖 子:19
专家分:1
注 册:2012-3-20
结帖率:33.33%
收藏
已结贴  问题点数:15 回复次数:0 
十六进制转八进制
问题描述
  给定n个十六进制正整数,输出它们对应的八进制数。
输入格式
  输入的第一行为一个正整数n (1<=n<=10)。
  接下来n行,每行一个由0~9、大写字母A~F组成的字符串,表示要转换的十六进制正整数,每个十六进制数长度不超过100000。
输出格式
  输出n行,每行为输入对应的八进制正整数。
注意
  输入的十六进制数不会有前导0,比如012A。
  输出的八进制数也不能有前导0。
样例输入
2
39
123ABC
样例输出
71
4435274


#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main()
{
    int n,i,sum,m,f[100005],j,h;
    while(scanf("%d",&n)!=EOF)
    {for(h=0;h<n;h++)
    {
                              scanf("%x",&m);
    {j=1;
    sum=0;
    while(m)
    {
        f[j]=m%10;
        m/=10;
        j++;   
           }
           for(i=j-1;i>0;i--)
           sum=sum+f[i]*pow(10,i-1);
           int k=0;
           while(sum)
           {
              f[k]=sum%8;
              sum/=8;
              k++;      
                     }
                     for(i=k-1;i>=0;i--)
                     printf("%d",f[i]);
                     printf("\n");
           }
}

           return 0;
    }
 提示是用二进制,现在提交的是错误的,怎么改啊?
搜索更多相关主题的帖子: 字符串 正整数 八进制 include 十六进制 
2014-03-04 19:33
快速回复:十六进制转八进制
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015233 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved