• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:キーボードからの入力)

キーボードからの入力による配列への値の格納方法について

このQ&Aのポイント
  • キーボードの1を使い、1を押した回数を配列に入れるというCプログラムを考えています。
  • 思いついた方法と言えば、入力した数字を10で割るという方法ですが、長整数の範囲を超えてしまいます。
  • 良い方法をご存知であれば教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

#include<stdio.h> int main(void) { int n[10] = {0}, i; char c; for(i = 0; i < 10; i ++){ while((c = getchar()) != '\n') n[i] += (c == '1'); } for(i = 0; i < 10; i ++) printf("n[%d] == %d\n", i, n[i]); return 0; }

lockwell
質問者

お礼

yaemon_2006さん。ありがとうございました!おかげさまで解決できました!

その他の回答 (1)

  • koko_u_
  • ベストアンサー率18% (459/2509)
回答No.1

>キーボードから1を5回押せば配列[0]に数字の5を、 >次に1を10回押せば配列[1]に10を、 「次に」の判断方法がわかりません。1を5回押した後エンターキーを押すとか?

lockwell
質問者

補足

そうですね。用意した配列内がいっぱいになるまでキーボード入力を繰り替えします。例えば配列[30]まで用意したら、[0]~[29]の配列がいっぱいになるまで、1を数回押しエンターキー、次の配列に移動して1を数回押しエンターキーそしてまた次の配列、といった形です。