-6

私は自分のプロジェクトを開始するのに多くの問題を抱えています。道順は次のとおりです。

"Complete counts.c as follows:
    Read characters from standard input until EOF (the end-of-file mark) is read. Do not prompt the user to enter text - just read data as soon as the program starts.
    Keep a running count of each different character encountered in the input, and keep count of the total number of characters input (excluding EOF)."

教授から教えてもらった書式は次のとおりです。

#include <stdio.h>
int main(int argc, char *argv[]) {
return 0;
}

問題の開始方法に加えて、メイン関数に何も渡されないのに、なぜ 2 つのパラメーターが与えられるのかについても混乱しています。助けていただければ幸いです。ありがとうございました!

`

4

3 に答える 3

2

ここで問題が発生していることを確認するのは少し難しいです。タイトルは完全な質問ではなく、本文にもありません。そして、それらはまったく異なる質問をほのめかしているようです.

割り当ては、文字を保存するのではなく、読み取るように指示します。必要に応じて、(たとえば getchar を使用して) 一度に 1 つずつ読み取るループを作成することもできます。また、各文字の数を報告するよう求められます。これは、配列に格納するのに適しています。これが「それぞれ異なる文字」であることを考えると、最も簡単な方法は、可能なすべての文字の配列のサイズを設定することです (limits.h はこれに役立つ UCHAR_MAX を定義します)。配列が自動的に割り当てられる場合は、配列を初期化することを忘れないでください (関数ローカル変数のデフォルト)。

main への引数に関しては、このプログラムはそれらを必要とせず、C 標準ではそれらを省略することができます。これは基本的な C プログラムのテンプレートであるため、コマンド ライン引数も使用する場合に使用できるようにするために含まれている可能性があります。

より多くのリファレンス コードについては、ワード カウント ユーティリティ (wc) を比較してください。必要な文字カウントは、頻度分析またはヒストグラムの基礎です。

于 2014-02-18T21:04:27.007 に答える