求解答,我的程序老出错

img

取偶数位就是取十位,千位,十万位。
只要每次取n的十位上数,再把n除以100,如此循环,直到n<10
4你题目的解答代码如下:

#include <stdio.h>
long fun(long n)
{
    long m = 0;
    do
    {
        m = m*10 + n / 10 % 10;
        n /= 100;
    } while (n>=10);

    return m;
}

int main(void)
{
    long n;
    scanf("%ld", &n);
    printf("%ld", fun(n));
    return 0;
}

如有帮助,望采纳!谢谢!

将整数不断求余,获取余数,偶数位的余数不断乘以10后累加就行了

#include <stdio.h>
int main()
{ 
    int n,m=0,c=0;
    scanf("%d",&n);
    while(n>0)
    {
        c++;
        if(c%2==0)
            m = m*10+n%10;
        n=n/10;
    }
    printf("%d",m);
    return 0;

}