質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

GCC

GCCはGNU Compiler Collectionの略です。LinuxのC言語コンパイラのデファクトスタンダードであり、数多くの他言語やプラットフォームサポートもします。

受付中

C  単語の出現頻度を調べる

ambitious
ambitious

総合スコア0

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

GCC

GCCはGNU Compiler Collectionの略です。LinuxのC言語コンパイラのデファクトスタンダードであり、数多くの他言語やプラットフォームサポートもします。

4回答

0リアクション

0クリップ

383閲覧

投稿2022/07/07 02:52

編集2022/07/07 17:06

前提

C言語で文章中の出現頻度を計算、表示しさらに標準入力されたwordの出現頻度を表示するプログラムを作っています。

実現したいこと

, . ' : ; ( )  空白(スペース)などの特殊文字で区切る。
大文字は小文字にする
文章中の単語を二分探索木に格納する。
出現頻度の計算、表示、検索

発生している問題・エラーメッセージ

出力結果が想定通りでない

89 apple
23 grape
2 lemon
1200種類の単語を登録
としたいです。

該当のソースコード

C

試したこと

出力結果が想定通りになりません。

補足情報(FW/ツールのバージョンなど)

gcc (Ubuntu 9.3.0-10ubuntu2) 9.3.0

以下のような質問にはリアクションをつけましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

リアクションが多い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

2022/07/08 11:53

こちらの質問が複数のユーザーから「意図的に内容が抹消された質問」という指摘を受けました。

ambitious

2022/07/07 02:59

元のプログラムではファイル名は実在するファイルにしてあり、開くことが出来ます。
otn

2022/07/07 03:13 編集

segmentation fault は、どの行でですか?
tatsu99

2022/07/07 03:23

ファイルの内容を提示すると、良い回答がつきやすくなります。
melian

2022/07/07 03:33

以下の部分で、c がアルファベットの場合は無限ループになって、str[i] = c; で範囲外アクセスが発生しているのでしょう。 while (c != 32 && c != 44 && c != 46 && c != 58 && c != 59 && c != 28 && c != 29) { if (65 <= c && c <= 90) c += 32; str[i] = c; i++; }
ambitious

2022/07/07 05:02

指摘箇所を修正し、faultは出なくなりましたが出力結果が想定通りではありません。
ambitious

2022/07/07 05:22

************************** 入力ファイル名: *.txt � *** 単語の出現頻度 *** 1 � 0種類の単語を登録 単語, または00を入力して下さい(00なら終了します): 出力結果です。
ambitious

2022/07/07 05:23

Section 1. Full faith and credit shall be given in each state to the public acts, records, and judicial proceedings of every other state. And the Congress may by general laws prescribe the manner in which such acts, records, and proceedings shall be proved, and the effect thereof. Section 2. The citizens of each state shall be entitled to all privileges and immunities of citizens in the several states. A person charged in any state with treason, felony, or other crime, who shall flee from justice, and be found in another state, shall on demand of the executive authority of the state from which he fled, be delivered up, to be removed to the state having jurisdiction of the crime. 読み込むファイルの一部です。
jimbe

2022/07/07 08:48 編集

main の最初の(fgetc をしている) while 文の中で、変数 i がどのような変化をするか確認しては如何でしょうか。 なお、ご提示のコードでは何か所かで return が足りません。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

GCC

GCCはGNU Compiler Collectionの略です。LinuxのC言語コンパイラのデファクトスタンダードであり、数多くの他言語やプラットフォームサポートもします。