中小企業の働き方改革をサポート>>

30行×30列の数字が記載されてテキストファイルがあり、
それをC言語で例えばA[ ][ ]といった配列に読み込みたいのですが、
どうすればよいでしょうか?

fscanf関数を用いればできないことはないと思うのですが、
30個も書かなければならないのは冗長なので・・・。

なにかよい方法はありますでしょうか?

このQ&Aに関連する最新のQ&A

A 回答 (2件)

>for(i=1;i<=30;i++){


>fscanf(fp, "%lf %lf・・・ %lf\n", &n1, &n2,・・・,&n30);
>}

配列使って、多重ループにするのが普通…かと。

for(i=0;i<30;i++) {
 for(j=0;j<30;j++) {
  fscanf(fp, "%lf", &a[i][j]);
 }
}
って感じでしょうかね。
入力テキストの形式が異なる場合などのエラー処理は必要でしょうが…。
    • good
    • 0
この回答へのお礼

ありがとうございました。
言われてみればその通りですね、確かに。
ちょっとボケてました。。。

どうもありがとうございました!

お礼日時:2011/11/21 17:45

「30個も書かなければならない」がどういう方法を想定しているのかわかりかねますが, 単なるループではだめ?

この回答への補足

すいません、説明不足でした。
「30個も書かなければならない」というのは、例えば

for(i=1;i<=30;i++){
fscanf(fp, "%lf %lf・・・ %lf\n", &n1, &n2,・・・,&n30);
}

としなければならないのかなぁ、と思ったのですが、
これをループをつかって上手いことできるでしょうか?

補足日時:2011/11/21 16:57
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング