之前我都是先输出一个,标记位置后,再输出printf(" %d",s[i]),后面输出时带空格,这样末尾就不会带空格了,不过这样写代码就显得比较繁琐啦,以后可以用一个标记符,让它初始值为0,结果输出时进行判断,如果为0,不输出空格,否则就输出,例如上面代码的‘t’;而且t还可以标记,是否有答案输出。例如上面正确代码的用法。
 3:是关于printf("%05d",m)使用方法,’%05d’,5为要求输出位数,0为补位字符 
#include<stdio.h>
 int main()
 {
     int a[1000000]={ 0 };
     int N,K,M; 
     int i,n,m,t=0;//t是标志符,一举两用,在是否输出空格和是否找到太帅的人做标记 
     scanf("%d",&N); 
     while(N--)
     {
         scanf("%d",&K);
         for(i=1;i<=K;i++)
         {
             scanf("%d",&n);
             if(K!=1)
             {
                 a[n]=1;//此人不帅
             }     
         }
     }
     scanf("%d",&M);    
     while(M--)
     {
         scanf("%d",&m);
         if(a[m]==0)
         {
             if(t!=0) printf(" ");//按输出格式的 
             printf("%05d",m);// '%05d',输出占五位,不足者用0补位  
             a[m]=1;//输出后,做标记,避免重复查询 
             t++; 
         }        
     }
     if(t==0) printf("No one is handsome");
     return 0;
 } 










