www.pudn.com > 10to16.rar > try7.c


 
#include 
 
char str2IntHex(char InStr[]); 
int str2Int(char InStr[]); 
 
void main() 
{ 
   char str[4]; 
   char result = '\0'; 
   int i = 0; 
 
   for(i=0; i<4; i++) 
      str[i] = '\0'; 
 
   scanf("%s",str); 
   getchar(); 
 
   result = str2IntHex(str); 
   printf("result == %c",result); 
 
   getch(); 
   return; 
} 
 
char str2IntHex(char InStr[]) 
{ 
   int data = 0; 
   char result = '\0'; 
 
   data = str2Int(InStr); 
 
   switch(data) 
   { 
      case 0: result = '0';break; 
      case 1: result = '1';break; 
      case 2: result = '2';break; 
      case 3: result = '3';break; 
      case 4: result = '4';break; 
      case 5: result = '5';break; 
      case 6: result = '6';break; 
      case 7: result = '7';break; 
      case 8: result = '8';break; 
      case 9: result = '9';break; 
      case 10: result = 'A';break; 
      case 11: result = 'B';break; 
      case 12: result = 'C';break; 
      case 13: result = 'D';break; 
      case 14: result = 'E';break; 
      case 15: result = 'F';break; 
      default: printf("The number is mismatch!\n\r"); 
   } 
   return result; 
} 
 
 
int str2Int(char InStr[]) 
{ 
   int i=0,j=0,now=0; 
   int length=0; 
   int result=0; 
 
   for(length=0;InStr[length]!='\0';length++);  /*计算InStr[]的长度*/ 
 
   if(length==0) 
   { 
      printf("The array is empty!\n\r"); 
      return(0); 
   } 
 
   for(i=0;i