2014年6月14日 星期六

d011

#include
#include
int main(void) {
    char s[999];
    int stelen = 0;
    int spacenum;
    int i = 0;
    while( gets(s)!=0 ) {
        char s1[100];
        char s2[100];
        memset(s1, 0, 100);
        memset(s2, 0, 100);
        stelen = strlen(s);
        spacenum = strcspn(s, " ");
        for (i=0; i
            s1[i] = s[i];
        }
        for (i=spacenum+1; i
            s2[i-(spacenum+1)] = s[i];
        }
        if(!strcmp(s1,s2)){
            printf("Yes\n");
        }else printf("No\n");
    }
    return 0;

}

tips:
1.記得輸出要換行...\n
2.記得char array每次都要重新清空,就算char宣告放在while裡也一樣,不會像其他語言這樣可以重新init,在c可使用memset重設值。

source:
memset 設定位元組中的位元值,設定的方式從s 開始將n 個位元組設定成為c 的位元值並回傳s,經常運用的範圍是在將位元組的位元值清為0。
http://stackoverflow.com/questions/1559487/how-to-empty-a-char-array

沒有留言: