通報するこの質問への回答は締め切られました。17:02※長いので、お暇な時にでも読んでください(^^;※最終的なソースは、1番下にあります。■1■変数の数を減らすことから始めよう今10個の値を入力するために、a~jの10個の変数を宣言していますが、もしこれが100個の値を入力する問題だったらどうしましょう?同じ用途の変数がたくさん必要な場合には、配列変数を使うと便利です。配列とは「1つの変数にたくさんの値を入れられるようにしたもの」です。配列の宣言は次のようにします。)までが使えるようになります。配列aの「要素」といいます。]内に使う個数を書き、使う時は0からの通し番号を入れるわけです。0から数えるので、a[10]は使えないことに注意してください。配列を使うと、次のように書き換えることが出来ます。■2■配列の各要素を、変数で使い分けよう上記プログラムは、全然すっきりなんてしていませんね。結局100個の値が必要ななったら、えらい手間がかかってしまいます。配列を使う一番のメリットは、各要素を変数で使い分けることができる点です。書くことができるのです。この変数bを、forループを使って1ずつ増やしてやれば、たとえ100個の値が必要になっても問題ないわけです。これを使って、前半部分は次のように書き換えられます。}※forループの使い方が分からなければ質問してください。■3■少しずつ計算しよう次に合計を求めて個数で割る部分についてですが、足し算を全部書いたらすごく大変ですよね?ここでは「足し込み」という、ちょっとしたテクニックを使って、プログラムを簡単にします。*/この「ある変数に数を足した結果を、その変数にする」というのが「足し込み」です。」のように省略形を使って書きます。合計が求まるわけです。それではループ・足し込みを使って、後半部分を書き換えてみます。前半では10回分の入力を、後半では10回分の足し算を行っているわけです。ここでちょっと考えてみてください。ここまででは「全部入力した後、全部計算する」という形になっているわけですが、「1個入力したら、1個足し込む」をループさせても、うまくいくような気がしませんか?実際にくっつけてみると、下記のようなソースになります。しましたよね?■5■入力した1つ1つの値って、後で使いますか?配列を使って10個分の入力をしたわけですが、おかげで「何番目に何を入力したか」がいつでも分かって便利ですね。(0番目から数えます。)ところで、この「1つ1つの入力した値」って、何かに使いますか?もし使わないのなら、全部取っておく必要ないですよね?そもそも配列にした理由は、「たくさんの入力を行うのに、別々の変数を用意するのが大変だったから」です。今はループを使って、「1個入力したら1個足し込み」にしているので、実は変数は1個でも構わないんです。足し込んじゃえば、入力した値はもうどうでも良いわけで、その変数を何に使おうが問題ないわけですから。宣言とループ内の3箇所を直せばいいですね。何用の変数ですか?合計を求めるのに使って、その後平均を求めて・・・まぁ今回はその程度だから問題はあまり無いんですが、1つの変数を用途を限定せずにあちこちで使いまわすと、思わぬバグを引き起こすことがあります。合計用と平均用で変数を分けておきましょう。その際、用途が分かるような名前を付けたほうが、後で見た時&他の人が見た時に、理解しやすいコードになります。■7■マジックナンバーをなくそう「マジックナンバー」とは、プログラム中に出てくる意味不明な数字のことです。両方とも「10個のデータ」という問題絡みのものです。何が問題かというと、例えば問題を「50個の入力値の平均を求めるプログラム」に変えられた時、ぱっと見てどこを直せばよいかが分かりにくく、修正漏れによるバグを起こしやすいことです。このプログラムの場合、処理するデータの個数を「グローバル変数」や「マクロ」なりに置き換えて、修正個所を1つにしてしまいましょう。ただの「数字」が、変数などの「名前」になることで、プログラムも分かりやすいものになります。※グローバル変数やマクロについて分からなければ質問してください。通報するこの回答へのお礼ありがとうございました。これから役立ちそうです。通報するこの回答へのお礼ありがとうございます。sum+x)を使ってみました。通報するこの回答へのお礼ありがとうございます。思わずみんなでなるほど~と感心してしまいました。&gakusei[i].shimei);&以降のコラボが?2教えて下さい。C言語printf("%d-%dは%dです。回答数ランキングです。・本当は知りたい、発毛体験のあれこれ。恋愛からビジネスまで人気の記事が一目で分かる今読むべき記事はコレ!貴社サイトにQ&Aを!QAコネクトとは・・?QA機能を導入できます利用料0円。Inc.質問して、直接聞いてみよう!Q質問する(無料)Q&A検索goo検索gooIDで新規登録・ログイン新規登録する(無料)会員の方はこちら外部サービスのアカウントで新規登録・ログインYahoo!で新規登録・ログインGoogleで新規登録・ログインTwitterで新規登録・ログインFacebookで新規登録・ログイン※各種外部サービスのアカウントをお持ちの方はこちらから簡単に登録できます。お客様の許可なしに外部サービスに投稿することはございませんのでご安心ください。会員でない方、会員になるとあなたも質問や回答ができるようになります!!親切・丁寧な回答が集まる場30分以内に回答がもらえ回答数は平均3件!匿名(ニックネーム)での投稿なので。