//取奇数,想知道哪里错了??

//取奇数,想知道哪里错了??
#include
#include
//哪错了呢??
int main()
{

    unsigned int n;
    scanf("%u",&n);
    unsigned int temp=n;
    int count=0;
    int array[50];
    int i=0;
    while(temp)
          {
          array[i]=temp%10;
          temp/=10;
          count++;
          i++;
          }
    int len=0;
    len=strlen(array);
    for(int i=len-1;i>=0;i--)
    {
    if(array[i])
    {
    printf("%d",array[i]);
    }
    }
}

修改如下,供参考:

//取奇数,想知道哪里错了??
#include<stdio.h>
#include<string.h>
//哪错了呢??
int main()
{

    unsigned int n;
    scanf("%u", &n);
    unsigned int temp = n;
    int count = 0;
    int array[50];
    int i = 0;
    while (temp)
    {
        array[i] = temp % 10;
        temp /= 10;
        count++;
        i++;
    }
    //int len = 0;  修改
    //len = strlen(array);   修改
    for (i--; i >= 0; i--)  //(int i = len - 1; i >= 0; i--)  修改
    {
        if (array[i] % 2)   //(array[i])  修改
        {
            printf("%d", array[i]);
        }
    }
}

获取len不要用strlen 这个数组长度不就是count吗
直接写int len = count;