文字列から数字を抽出する方法

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
ミカン
記事: 3
登録日時: 2年前

文字列から数字を抽出する方法

#1

投稿記事 by ミカン » 2年前

C言語初心者です。初めて質問させていただきます。よろしくお願いします。

文字列から数字を抽出して、大きい順に並べるプログラムをどのように作ればいいかわかりません。
例1. abc34de56jh67 → 67 56 34

ご教授お願いします

アバター
みけCAT
記事: 6734
登録日時: 13年前
住所: 千葉県
連絡を取る:

Re: 文字列から数字を抽出する方法

#2

投稿記事 by みけCAT » 2年前

1. 作るプログラムの仕様を決める

例えば、
・抽出元の文字列はどこから入力させるか?
・数字はどのくらいの範囲(大きさ)まで対応するか? (例えば4桁?9桁?18桁?もっと?負の数は?)
・認める数字の範囲は? (全角アラビア数字は?漢数字は?ローマ数字は?その他の言語での数字や数を表す言葉は?)
・「大きい順」とは?数値として見た時の大きさ?辞書順?データサイズが大きい順?
・出力はどこに、どのような書式でする?
など。

2. 決めた仕様に基づき、プログラムを作る

3. 作ったプログラムをテスト・デバッグする

というように作ればいいと思います。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

参照魚
記事: 109
登録日時: 6年前

Re: 文字列から数字を抽出する方法

#3

投稿記事 by 参照魚 » 2年前

まずは固定の文字列から連続する数字を抜き出す事を考えてみてください。

コード:

char test[]=“abc34de56jh67”;
その過程で抜き出した数字をどうやって保存しておくか(しないで済む方法はないか)?など疑問が出てくると思いますので、そうしたらまた少しづつ解決していきます。

経験を積んで慣れてくればそれが頭の中で描けるようになりますが、最初は問題を小さく局所的にしてトライ&エラーで良いかなと思います。

返信

“C言語何でも質問掲示板” へ戻る