線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:716
推到 Plurk!
推到 Facebook!

印出開頭為b 的字串

答題得分者是:blk5743
fj9071
一般會員


發表:8
回覆:4
積分:2
註冊:2005-01-07

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-04-11 01:21:42 IP:61.221.xxx.xxx 未訂閱
以下的程式碼是錯的,希望大大幫我看一下 若輸入bodk oklj bo 會輸出boddk bo
void main (void)
{
char bigstr[81], s2='b';
printf ("輸入字串:");
gets (bigstr);
char *cp =bigstr;
while ((cp = strstr(bigstr,s2))!=NULL)
{
cp  ;
printf("\n開頭為b的字串 %s  ",cp);
}
getch();
}
發表人 - taishyang 於 2005/04/11 08:55:28
暗黑破壞神
版主


發表:9
回覆:2301
積分:1627
註冊:2004-10-04

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-04-11 09:25:18 IP:221.169.xxx.xxx 未訂閱
這個應是作業吧。 1.你先去試試利用 gets 取得你所輸入的那一行字串。 並把它印出來。 2.你利用兩個指標。一個是單字的起始,一個是單字的結束。 3.當你利用2的方式取得一個字時。 你可以利用 *start 來判斷這個字是不是 'b' 如果是就印出。 如果不是就再找下一個字。 4.結束判斷為遇到 '\0' 加油。多試幾次你就可以得到答案了。
blk5743
高階會員


發表:34
回覆:371
積分:236
註冊:2003-11-17

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-04-11 09:40:37 IP:61.66.xxx.xxx 未訂閱
fj9071你好    請參考  
 
int main(int argc, char* argv[])
{
    char bigstr[81];
    printf ("輸入字串:");
    gets (bigstr);
    char *cp =strtok(bigstr," ");
    while(cp != NULL)
    {
        if ( *cp == 'b' )
        {
            printf("\n開頭為b的字串 %s  ",cp);
            cp  ;
        }
        cp=strtok(NULL," "); //引號內填入你要用來區隔的字元" "
    }        getch();
}
輸入 abc big main book 輸出 開頭為b的字串 big 開頭為b的字串 book
系統時間:2024-05-19 16:00:28
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!