#define BLUE 'b'
 #define WHITE 'w'
 char color[]={'r','w','b','w','w','b','r','b','w','r','\0'};
  SWAP(x, y) 
{ 
    char t;
     t=color[x];
     color[x]=color[y];
     color[y]=t;
 }
 int main()
 {
     
     int wFlag=0;
     int bFlag=0;
     int rFlag=strlen(color)-1;
     int i;
     for(i=0;i<strlen(color);i++)
         printf("%c",color[i]);
     printf("\n");
     while(wFlag<=rFlag)
     {
         if(color[wFlag]==WHITE)
             wFlag++;
         else if(color[wFlag]==BLUE)
         {
             SWAP(bFlag,wFlag);
         bFlag++;
         wFlag++;
     }
     else
     {
         while(wFlag<rFlag&&color[rFlag]==RED)
             rFlag--;
         SWAP(rFlag,wFlag);
         rFlag--;
     }
 }
 for(i=0;i<strlen(color);i++)
 printf("%c",color[i]);
 printf("\n");
 return 0;
 }
那个不知道什么问题,改了一下可以运行