(C小程序)转换任意十六进制数的…

来源:互联网 发布:大麦网数据库 网盘 编辑:程序博客网 时间:2024/05/16 06:20

#include "iostream.h"
#include <string.h>
#include "stdio.h"
void  Hex_Convent_Dec(char *p);
int Involution(int n);

void  Hex_Convent_Dec(char *p)
{
 int length;
 int i= 0 ,value,sum = 0;
 length = strlen(p);
 for(i=0;i<length;i++)
  
  value = 0;
  if((*p>='0')&&(*p<='9'))
  {
   value =(*p-'0')* Involution(length-i-1);
   sum +=value;
  }
   if((*p>='A')&&(*p<='Z'))
  {
   value =(*p-'A'+10)* Involution(length-i-1);
   sum +=value;
  }
    if((*p>='a')&&(*p<='z'))
  {
   value =(*p-'a'+10)* Involution(length-i-1);
   sum +=value;
  }
  p++;
 }
 cout<<sum<<endl;
}

int  Involution(int n)
{
 int value_Inv = 1;
 int i;
 for(i=0;i<n;i++)
 {
  value_Inv *= 16;
 }
    returnvalue_Inv;
}

void main(void)
{
 Hex_Convent_Dec("1AcB53");
}

0 0
原创粉丝点击