- 締切済み
C言語について質問です。教えてください。
C言語について質問です、教えてください。 以下のようなテキストファイルがあるとします。 apple,111 orange,222 grape,333 lemon,444 banana,555 一行ずつorange というものがあるかないかを探して、 なければ次の行を検索、 あれば、その該当行のカンマで区切った二つ目のデータ(ここでいう222)を とってきて、break処理 どのようにくめばいいでしょうか>< 誰か教えてください。 よろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- nda23
- ベストアンサー率54% (777/1415)
次の機能をC言語で表現できますか? (1)ファイルをテキストモーで開く。 (2)開けなかった場合の判断と、その時の対処 (3)ファイルから1行(改行まで)を読み込む。 (4)読み込めない場合の判断と、その時の対処 (5)文字列(読み込んだデータ)から特定の文字(",")を探す。 (6)文字列同士の比較 (7)文字列(メモリの特定範囲)のコピー (8)ファイルを閉じる。 ファイルのパス名の受け取り、「とってきたデータ」の返し方に 注意すれば、あとは質問者さんの書いたシナリオ通りに記述すれば だいたい希望するものが得られると思います。
- Trick--o--
- ベストアンサー率20% (413/2034)
一行ずつorange というものがあるかないかを探して、 なければ次の行を検索、 あれば、その該当行のカンマで区切った二つ目のデータ(ここでいう222)を とってきて、break処理 これをそのままC言語に「翻訳」すればいい。 もうちょっとプログラムらしい手順にそって書くとこんな漢字。 1行読み込む。EOFならループを抜ける ,の前後で分割する 分割した1番目のものが「orange」か調べる 「orange」なら2番目のものを取得してbreak ループする