您的位置:首页 > 其它

HDU 1106 排序

2014-07-10 18:15 197 查看
原本很简单的一道题做了老半天,老是显示格式错误,受不了了,看了很长时间呀


#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int cmp(const void *a,const void *b)
 {
       return *(int *)a-*(int *)b;
 }

int main ()
{
 
    char str1[1001];
    int  str2[1001],i;
    
    while(scanf("%s",str1)!=EOF)
    {
      int k=0,flag=0;
      
      int len=strlen(str1);
      for( i=0;i<len;i++)
      {  
         if(str1[i]=='5')
         continue ;
         else
         while(str1[i]!='5')
         {
           if(i==len)
           break;
           else 
            k=k*10+str1[i]-'0';
            i++;
                         
         }
         str2[flag++]=k;
         k=0;
       }
      
    qsort(str2,flag,sizeof(str2[0]),cmp);
    for(i=0;i<flag-1;i++)
      printf("%d ",str2[i]);
      printf("%d\n",str[i]); 
    }
   return 0;
    
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: