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

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

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

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

Q&A

解決済

1回答

491閲覧

与えた数値の中で一番出現している数値を出力する方法

ni-kura

総合スコア3

C

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

0グッド

0クリップ

投稿2023/01/21 04:59

編集2023/01/21 19:05

初歩的な質問で失礼いたします。

32428383553331911932;
上記のような1から9までの数値をコマンドライン引数として与えることとします。
この与えた引数の中で、最も出現数が多い数値を取得したいです。
また、最も多く出現する数値が複数存在する場合は,それらをすべて,小さい順に出力するようにしたいです。

上記の例では最多文字「3」を結果として取得したいです。
自分でも書こうとしましたが、数値をカウントする書き方がよくわかりませんでした。
どうぞよろしくお願いいたします。

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

episteme

2023/01/21 05:46

> 32428383053331911932; > 上記のような1から9までの数値をコマンドライン引数として与えることとします。 0入ってんじゃん...
jimbe

2023/01/21 05:55

>上記の例では最多文字「3」を結果として取得したい 貴方はなぜ 3 が結果となると分かるのか、その思考過程を認識して、コード化すれば良いと思います。
guest

回答1

0

ベストアンサー

  1. ハコ1~ハコ9 の9つのハコを用意する。
  2. 数字をひとつ取り出し、それがNならハコNにボールをひとつ放り込む
  3. 2をくりかえす。
  4. ボール数が最も多いハコの番号を出力する。

ひんと: 各数の出現頻度を求めるところまで。上記↑[4]はアナタがやって。

#include <stdio.h> int main(int argc, char* argv[]) { const char* input = argv[1]; input = "32428383053331911932"; // for test // ハコ0~ハコ9 の10個の(空の)ハコを用意する int count[10] = { 0 }; // 数字をひとつ取り出し、...をくりかえす for (; *input != '\0'; ++input ) { // それがNならハコNにボールをひとつ放り込む int N = *input - '0'; if ( N >= 0 && N < 10 ) ++count[N]; } // ハコ番号とボール数をプリントする for ( int i = 0; i < 10; ++i ) { printf("count[%d] = %d\n", i, count[i]); } return 0; }

投稿2023/01/21 05:41

編集2023/01/21 06:47
episteme

総合スコア16614

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

episteme

2023/01/21 10:05

goodつけたのはどういう意味かな? [4]のコードも欲しくて他の回答を待ってるのかな?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問