程序功能:输入一个整数,将该数中所包含的奇数数字依次取出,构成一个新数乘以2并严格按样例格式输出。注意新数的高位是原数的低位。不知道怎么写了,我自己写的自己都不知道写的啥,能帮我改改吗

img


#include
int main()
{
int s,t[80],i=0,x;
scanf("%d",&s);
while(s!=0)
{
t[i]=s%10;
s=s/10;
i++;
}
for(i=0;i!='\0';i++)
{
if(t[i]%2==1)
x=x*10+t[i];
}
printf("%d",x);
return 0;
}

你的的太麻烦了,没有不要用数组。我给你写了一版,供你参考。如果有帮助,望采纳。

#include <stdio.h>

int main() {
    int s, n = 0, flag = 1;
    scanf("%d", &s);
    if (s < 0) {
        s = -s;
        flag = -1;
    }
    while (s != 0) {
        int r = s % 10;
        if (r % 2 != 0)
            n = n * 10 + r;
        s = s / 10;
    }
    n = n * flag * 2;
    printf("%d", n);
    return 0;
}