//取奇数,想知道哪里错了??
#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;