计算机二级C++辅导:n进制数转为m进制
来源:优易学  2010-1-14 18:45:57   【优易学:中国教育考试门户网】   资料下载   IT书店

  算法步骤:
  1、将n进制数转换为10进制;
  2、将10进制数转换为m进制;
  下面是程序代码(为了模块重用写做两个函数):
  #include
  #include "math.h"
  #include "string.h"
  #define NUM_LENGTH 50
  char IntToChar[] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'};
  // Convert a char to integer ,like: F = 15
  int ConvertCharToInt(char ch)
  {
  switch(ch)
  {
  case '0':
  return 0;
  case '1':
  return 1;
  case '2':
  return 2;
  case '3':
  return 3;
  case '4':
  return 4;
  case '5':
  return 5;
  case '6':
  return 6;
  case '7':
  return 7;
  case '8':
  return 8;
  case '9':
  return 9;
  case 'A':
  return 10;
  case 'B':
  return 11;
  case 'C':
  return 12;
  case 'D':
  return 13;
  case 'E':
  return 14;
  case 'F':
  return 15;
  default:
  return -1;
  }
  }
  // Convert A x-base number to tenbase
  int ConvertToTenBase(const char *result, int origBase)
  {
  int ret, i;
  int len = strlen(result);
  ret = 0;
  for(i = 0; i < len; i++)
  {
  ret += ConvertCharToInt(result[len - 1 - i]) * pow(origBase, i);
  }
  return ret;
  }

[1] [2] 下一页

责任编辑:cyth

文章搜索:
 相关文章
热点资讯
资讯快报
热门课程培训