啊 c 语言好难🤯 c语言题目

一个整数,将该数中所包含的奇数数字依次取出,构成一个新数卖以2并严格按样例格式输出。注育新数的高位是原数的低位。
运行示例1:
输:87653142
输出: 1357$2=2714
说明:输入的正整数中1,3,5,7是奇数,枃成新数1357后并乘以2输出2714.。
运行示例2:
输%:-123456
输上:-531=-1062
说明:输六的负整数中5,3,1是奇数,构成新数仍为负整数-531后并乘以2输出-1062。输出不要加换行符。

int main(void)
{
    long long m, n, t;
    char a[32] = {0};
    char b[32] = {0};
    printf ("Please input the integer:\n");
    scanf ("%lld", &m);
    t = llabs(m);
    sprintf (a, "%lld", t);
    int l = strlen(a);
    if (l<1){                printf ("input m invalid\n");
        return -1;
    }
    int i = 0, j = 0;
    for (i=l-1; i>=0; i--){
        if (a[i]%2){
            b[j++] = a[i];
        }
    }
    n = atoll(b);
    n *= ((m>=0) ? 2 : -2);  printf ("n=%lld\n", n);

    return 0;
}
不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^