- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:キーボードからの入力)
キーボードからの入力による配列への値の格納方法について
このQ&Aのポイント
- キーボードの1を使い、1を押した回数を配列に入れるというCプログラムを考えています。
- 思いついた方法と言えば、入力した数字を10で割るという方法ですが、長整数の範囲を超えてしまいます。
- 良い方法をご存知であれば教えてください。
- みんなの回答 (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; }
その他の回答 (1)
- koko_u_
- ベストアンサー率18% (459/2509)
回答No.1
>キーボードから1を5回押せば配列[0]に数字の5を、 >次に1を10回押せば配列[1]に10を、 「次に」の判断方法がわかりません。1を5回押した後エンターキーを押すとか?
質問者
補足
そうですね。用意した配列内がいっぱいになるまでキーボード入力を繰り替えします。例えば配列[30]まで用意したら、[0]~[29]の配列がいっぱいになるまで、1を数回押しエンターキー、次の配列に移動して1を数回押しエンターキーそしてまた次の配列、といった形です。
お礼
yaemon_2006さん。ありがとうございました!おかげさまで解決できました!