有人能解答一下吗?一次测试

编写一个程序实现如下功能:
1.在main函数中输入自己的学号,并用一个字符数组保存。
PS:数组必须为:char studentID[20]

2.调用自己设计的函数函数头必须为:int getOdd(charin,int n,charout),统计其中(上面那个字符数组studentID中)的奇数个数,并得到这些表示奇数的字符;

3.在main函数中打印这些表示奇数的字符。

奇数字符写入out数组?

#include <stdio.h>
int getOdd(char *in,int n,char *out)
{
    int m=0,i=0;
    for(;i<n;i++)
    {
        if(in[i] == '\0')
             break;
        if((in[i]-'0')%2==1)
            out[m++] = in[i];
    }
    return m;
}
int main()
{
      char studentID[20],odd[20]={0};
      int num=0;
      scanf("%s",studentID);
      num=getOdd(studentID,20,odd);
      printf("odd字符数量:%d个,字符串为:%s\n",num,odd);
      return 0;
}