#include<stdio.h>
#include<math.h>
void trans(char arr1[],int arr[],int n)
{
puts("请输入16进制的数");
for(int i=0;i<n;i++)
{
scanf("%c",&arr1[i]);
arr[i]=(int)arr1[i];
}
for(int k=0;k<n;k++)
{
if(arr[k]>=65&&arr[k]<=70)
{
arr[k]=arr[k]-55;
}
if(arr[k]>=48&&arr[k]<=57)
{
arr[k]=arr[k]-48;
}
}
int sum=0;
for(int l=0;l<n;l++)
{
int p=arr[l]*(int)pow(16,n-1-l);
sum=sum+p;
}
printf("对应的10进制数=%d\n",sum);
}
int main()
{
int n;
puts("请输入16进制的位数");
scanf("%d",&n);
getchar();
char arr1[n];
int arr[n];
trans(arr1,arr,n);
return 0;
}