【掲示板ご利用上の注意】

 ※題名は具体的に!
 ※学校の課題の丸投げ禁止!
 ※ソースの添付は「HTML変換ツール」で字下げ!
 ※返信の引用は最小限に!
 ※環境(OSとコンパイラ)や症状は具体的に詳しく!
 ※マルチポスト(多重投稿)は謹んで!

 詳しくはこちら



 本当はこんなに大きく書きたくはないのですが、なかなか守っていただけなくて…。
 守ってくださいね。お願いします。(by管理人)

C言語ソース⇒HTML形式ツール   掲示板2こちら


管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧

No.18847

文字列の変換について教えてください。
投稿者---わん太(2004/12/22 12:29:51)


以下の問題のプログラムの作り方を教えてください。
1.キーボードから三つの文字列を入力させます。その三つをそれぞれ元の文字列,検索文字列,置換文字列と呼びます。
2.元の文字列を頭から順に調べ、検索文字列と一致する部分文字列が含まれているかを判断します。もし含まれていれば、それをすべて置換文字列で置き換えて新しい文字列を作ります。



この投稿にコメントする

削除パスワード

発言に関する情報 題名 投稿番号 投稿者名 投稿日時
<子記事> Re:文字列の変換について教えてください。 18850 επιστημη 2004/12/22 13:21:39
<子記事> 文字列の検索・置換<was: Re:文字列の変換について教えてください。> 18983 RiSK 2005/01/03 17:17:06


No.18850

Re:文字列の変換について教えてください。
投稿者---επιστημη(2004/12/22 13:21:39)


なにがわからないのですか?



この投稿にコメントする

削除パスワード

No.18983

文字列の検索・置換<was: Re:文字列の変換について教えてください。>
投稿者---RiSK(2005/01/03 17:17:06)


>1.キーボードから三つの文字列を入力させます。その三つをそれぞれ元の文字列,検索文字列,置換文字列と呼びます。
>2.元の文字列を頭から順に調べ、検索文字列と一致する部分文字列が含まれているかを判断します。もし含まれていれば、それをすべて置換文字列で置き換えて新しい文字列を作ります。

放置?
もったいないので書いてみました。

あんまりテストしていないソース:
#include <string.h>
#include <stdio.h>

char * ReplaceStr(char * s, const char * find, const char * replace)
{
    char * tmp = s;
    for (; *s; ++s) {
        const size_t find_len = strlen(find);
        const size_t replace_len = strlen(replace);
        if (memcmp(s, find, find_len) == 0) {
            char *const src = s + find_len;
            char *const dst = s + replace_len;
            const size_t len = strlen(s) - find_len + replace_len;
            memmove(dst, src, len);
            memcpy(s, replace, replace_len);
            s += len;
        }
    }
    return tmp;
}

int main(void)
{
    char s[256], find[256], replace[256];
    while (scanf("%s%s%s", s, find, replace) == 3) {
        puts(s);
        ReplaceStr(s, find, replace);
        puts(s);
    }
    return 0;
}



この投稿にコメントする

削除パスワード

No.18984

Re:文字列の検索・置換<was: Re:文字列の変換について教えてください。>
投稿者---RiSK(2005/01/03 17:24:57)


>あんまりテストしていないソース:

あ゛っ,バグだ。


この投稿にコメントする

削除パスワード

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧