C言語関係掲示板

過去ログ

No.334.キーワードが何個あるかカウントする

[戻る] [ホームページ]
No.2116

キーワードの検索
投稿者---初心者(2002/07/18 14:36:11)


入力された文字列中にキーワードが何個あるかカウントするプログラムを作成したいのですが、よくわかりません。実行すると、
文字列を入力: asdfgasertyiolkijuasw
キーワードを入力: as
キーワードの個数 = 3

のようになります。

入力した文字列に対してキーワードの文字をwhile文でループさせて順番に調べていったのですが、うまくいきませんでした。
質問の内容がよくわからないかもしれませんが、どなたかわかる人がいらっしゃいましたらヒントを頂きたいのですが。
よろしくお願い致します。

No.2119

Re:キーワードの検索
投稿者---Aki(2002/07/18 16:00:07)


このプログラムは、入力された文字列が空白類文字を含む場合について
考慮していません。
#include <stdio.h>
#include <string.h>

#define STRING_MAX  1024
#define TARGET_MAX  80

int main(void)
{
    char    string[STRING_MAX], word[TARGET_MAX], *p;
    int     count = 0;

    printf("文字列を入力: ");       scanf("%s", string);
    printf("キーワードを入力: ");   scanf("%s", word);

    for (p = string; p = strstr(p, word); p += strlen(word))
        count++;

    printf("キーワードの個数 = %d\n", count);
    return 0;
}


No.2120

Re:キーワードの検索
投稿者---初心者(2002/07/18 16:17:29)


Akiさん親切にありがとうございました!
とてもわかりやすくコメントして頂きまして感謝します。