找回密碼
 註冊
搜索
熱搜: 活動 交友 discuz
查看: 2130|回復: 1

求救 有好心人可以幫我看看C語言嗎?

[複製鏈接]
發表於 2011-6-9 00:21:38 | 顯示全部樓層 |閱讀模式
有好心大大可以幫我翻譯下面的程式碼嗎?  




#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define BLUE 'b'
#define WHITE 'w'
#define RED 'r'
#define SWAP(x, y) { char temp; \
                     temp = color[x]; \
                     color[x] = color[y]; \
                     color[y] = temp; }
void printFlags(char* color) {
    int i;
    for(i = 0; i < strlen(color); i++)
        printf("%c ", color);
    printf("\n");
}
void move(char* color) {
    int wFlag = 0;
    int bFlag = 0;
    int rFlag = strlen(color) - 1;
    while(wFlag <= rFlag) {
        switch(color[wFlag]) {
            case WHITE:
                 wFlag++;
                 break;
            case BLUE:
                   SWAP(bFlag, wFlag);
                   bFlag++; wFlag++;
                   break;
            default:
                   while(wFlag < rFlag && color[rFlag] == RED)
                       rFlag--;
                   SWAP(rFlag, wFlag);
                   rFlag--;  
        }
    }
}
int main() {
    char color[] = {'r', 'w', 'b', 'w', 'w',
                    'b', 'r', 'b', 'w', 'r', '\0'};
    printFlags(color);
    move(color);
    printFlags(color);
    return 0;
}
發表於 2011-6-19 13:15:21 | 顯示全部樓層

= ="這很簡單

先搞清楚strlen轉換~你就看得懂了
回復

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則

Archiver|手機版|小黑屋|PLUS28 論壇|討論區

GMT+8, 2025-8-2 19:37 , Processed in 0.172439 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回復 返回頂部 返回列表