你打印不出结果的原因是func函数里for循环里i递增停不下来,并且使得形参s和t也越界了for(i=0;i>=0;i++) { int j=0; while(s[i]%2==1&&i%2==1) { t[j]=s[i]; j++; } }你的i超过了100后,s[i]和t[j]就超过了你原本分配的内存,指针越界了