ここから本文です

解決済みのQ&A

得点を入力し、平均点、合計点、入力件数を出力する方法。

n21is34and1さん

得点を入力し、平均点、合計点、入力件数を出力する方法。

C言語を習い初めて2ヶ月たったのですが、初めてプログラム製作の課題が出ました。
しかし、どのようにしたら良いのか全く分かりません。
ヒントをください。



***************

■処理内容■
試験の得点(100点満点)を5人分入力し、その入力件数、合計点、平均点を出力せよ。
なお、平均点を計算するための人数は入力データの件数をカウントして使用すること。


■処理例■
得点入力:85
得点入力:90
得点入力:75
得点入力:83
得点入力:96
------
入力件数: 5
合計点: 429
平均点: 85

***************



入力にscanfを使用するのは分かりました。
5人分入力…と言うのは配列を使うのでしょうか?
if?while?


ちなみに教科書は”入門ABSI-C”という本を使っており、
第1章、Cプログラムの基礎
第2章、入出力と演算子
第3章、処理の流れ
第6章、配列
を習いました。

  • 質問日時:
    2008/6/11 18:43:21
  • 解決日時:
    2008/6/26 03:40:54
  • 閲覧数:
    1,691
    回答数:
    2

ベストアンサーに選ばれた回答

rhinosugarさん

以下の流れで処理するプログラムを書けばOK
細部はCの文法に従うこと

件数、合計点をゼロにする
count=5
while( --count >= 0 ) {
printf("得点入力:")
scanf ("%d",&得点)
合計点 += 得点
件数 += 1
}
printf("------")
printf("入力件数:%2d",件数)
printf("合計点: %d",合計点)
printf("平均点: %d",合計点/件数)

  • 違反報告
  • 編集日時:2008/6/11 19:29:00
  • 回答日時:2008/6/11 19:04:43

この質問は投票によってベストアンサーが選ばれました!

ベストアンサー以外の回答

(1件中1〜1件)

 

rouge_noir311さん

>平均点を計算するための人数は入力データの件数をカウントして使用すること。
とあるので、5人だけではなく何人でも対応できるように作成しろ、ということでしょうか。
以下は一例です。

1.while文でscanfし、配列に格納。この時countを++。数字以外が入力されたらwhile文を抜ける
2.入力件数はcountをそのままprintf
3.合計点は配列の中身を全て足す(for文でcount数だけ中身を足す)
4.平均点は合計点÷count

これなら、入力件数が5件でも10件でも100件でも対応できます。

Q&Aをキーワードで検索:

総合Q&Aランキング

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。

知恵コレに追加する

閉じる

知恵コレクションをするID/ニックネームを選択し、「追加する」ボタンを押してください。
※知恵コレクションに追加された質問や知恵ノートは選択されたID/ニックネームのMy知恵袋で確認できます。

ほかのID/ニックネームで利用登録する