为什么只是部分通过?代码哪里有问题?

图片说明

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#define N 200
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char *argv[]) {
    int nums[N]={0};
    int a[N]={0},b[N]={0};
    int i=0,n=1,j=1,s=0;
    scanf("%d",&n);
   for(i=0;i<n;i++)
   {
    scanf("%d",&nums[i]);

   }
    for(i=0,j=1;i<n;i++)
    {
        if( abs(nums[i])<=9)
        {
            b[i]=1;
        }
        else
        {
                    s=  abs(nums[i]);
        while(  s>=10)
        {
            j++;

            s/=10;
        }
        b[i]=j;
        j=1;
        }
    }
    for(i=0;i<n;i++)
    {
        if((    abs(nums[i])%2)==0&&b[i]%2==0)
             printf("%d",nums[i]);
    }
    return 0;
}


printf("%d\n",nums[i]);

不能使用的例子有嘛?提供一下