| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 385 人关注过本帖
标题:关于进制转换的问题,麻烦大侠们给看下问题出在哪了
只看楼主 加入收藏
炸弹
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2009-8-2
收藏
 问题点数:0 回复次数:1 
关于进制转换的问题,麻烦大侠们给看下问题出在哪了
#include "stdio.h"

void convert(int n,int m);

 main()
{
    int num,b;
    printf("Enter the num:");
    scanf("%d%d",&num,&b);
    convert(num,b);
   
}

 void convert(int n,int m)
{
    long a;
    int b;

    if(b==2||b==8)
    {
        int x=0,y;
        int c[32];
          while(a!=0)
        
          {
               y=a%b;
               c[x++]=y;
               a=a/b;
          }
      while(x>0)
          printf("%d",c[--x]);
      
    }
     
     else if(b==16)
      {   
        
          char s[16][2]={{"0"},{"1"},{"2"},{"3"},{"4"},{"5"},{"6"},{"7"},{"8"},{"9"},{"A"},{"B"},{"C"},{"D"},{"E"},{"F"}};
          int k[8],i=0,j,y;
               while(a!=0)
               {   
                  y=a%16;
                  a=a/16;
                  k[i++]=y;
               }
            
            for(j=1;j<=i;j++)
                printf("%s",s[k[i-j]]);
        
      }

    
      
}
搜索更多相关主题的帖子: 进制 麻烦 
2009-08-02 10:33
renjian12345
Rank: 1
来 自:西安
等 级:新手上路
帖 子:13
专家分:6
注 册:2009-8-2
收藏
得分:0 
楼主对函数的调用上还是有点问题
这是我调试过的代码,你可以看看
一起学习,我的Email:renjian4660129@
#include "stdio.h"
void convert(int n,int m);
void main()
{
    int num,b;
    printf("Enter the num:");
    scanf("%d%d",&num,&b);
    convert(num,b);
   
}

void convert(int n,int m)
{

    if(m==2||m==8)
    {
        int x=0,y;
        int c[32];
          while(n!=0)
        {
               y=n%m;
               c[x++]=y;
               n=n/m;
         }
      while(x>0)
          printf("%d",c[--x]);
      
    }
     else if(m==16)
      {   
         char s[16][2]={{"0"},{"1"},{"2"},{"3"},{"4"},{"5"},{"6"},{"7"},{"8"},{"9"},{"A"},{"B"},{"C"},{"D"},{"E"},{"F"}};
         int k[8],i=0,j,y;
         while(n!=0)
          {   
                y=n%16;
                n=n/16;
                k[i++]=y;
          }
            
            for(j=1;j<=i;j++)
                printf("%s",s[k[i-j]]);
        
     }

   
}
2009-08-02 11:25
快速回复:关于进制转换的问题,麻烦大侠们给看下问题出在哪了
数据加载中...
 
   



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

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