C++这个程序怎么写

img

int arr[20];
int  num=0;
char str[20];
int sum=0;
gets(str);
int len=strlen(str);
for(int i=0;i<len;i++)
{
    if(str[i]>='0'&&str[i]<='9')
    {
        int a=str[i]-'0';
        arr[num]=a;
        num++;
    }
}

for(int i=0;i<num;i++)
{
    sum+=arr[i]*pow(16,i);
}
printf("%c",sum);

 
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include <math.h>
int main()
{
    char str[1024];
    scanf("%s",&str);
    int len = strlen(str);
    int code = 0;
    char temp;
    for (int i = 0; i < len/2; i++)
    {
        temp = str[i];
        str[i] = str[len - 1 - i];
        str[len - 1 - i] = temp;
    }
    for (int i = 0; i < len; i++)
    {
        if (str[i]>='0'&&str[i]<='9')
        {
            code += ((str[i] - '0') * pow(16, len - 1 - i));
        }
        if (str[i] >= 'A' && str[i] <= 'Z')
        {
            code += ((str[i] - 'A' + 10) * pow(16, len - 1 - i));
        }
        if (str[i] >= 'a' && str[i] <= 'z')
        {
            code += ((str[i] - 'a' + 10) * pow(16, len - 1 - i));
        }
    }
    printf("%c",code);
    return 0;
}