Initial time 01:05 date 00/01/01
name
a:2
b:3
10
20
30
・
・
・
上記のようなテキストファイルで、6行目以降の数値を配列に格納して統計処理を考えています。自分ではfgetsが行の終端まで読むのを利用して、まず十分な長さのchar型配列を5つ用意し、1行目~5行目まではそれに格納し、6行目以降はfscanfで読む事を考えたのですが、printfで表示させると格納した文字や、計算の結果期待できる数値と異なる表示になってしまいます。良い方法があれば教えて頂きたく存じます。よろしくお願い致します。
No.2ベストアンサー
- 回答日時:
>fgetsとfscanfは一緒には使えないのでしょうか?
使用できますが、混在した使い方を私は勧めません。
但し、出来ないわけではないので貴方のやり方が間違っているわけではありません。
一緒に使うのであれば、以下の点をチェックしてみて下さい。
1.fgetsの読み込み領域は十分大きく取っていますか。又、そのサイズは正しく指定していますか。
(改行まで読み込んでいない可能性がありますから)
2.fscanfの書式は"%d"でしょうか。また、そのデータを格納する領域はint型でとっていますか。
3.fscanfを実行時の戻り値はどのような値が返りますか。
度々のご回答ありがとうございます。
無事に読み込み&計算できました。原因は1.の読み込み領域が少なすぎた事でした。大きな領域を用意してみたところ正常に動作しました。
2.は一応"%d"でとっています。
3.は"1"が返ってきました。
本当に助かりました。ありがとうございました。
No.1
- 回答日時:
6行目以降の処理がうまくいかないということでしょうか。
もしそうであれば、6行目以降は、fgetsで読んだ内容をatoi又はatolで整数に変換すれば、数値(10,20,30)が取得できます。早速のご回答ありがとうございます。
>6行目以降の処理がうまくいかないということでしょうか。
はい、そうです。説明が不足していてすいません。最初の5行(空行含む)は最悪捨ててしまっても良くて、6行目以降の数値データ同士のみの統計処理を行い、その結果を別のファイルに書き込む事を考えています。fgetsとfscanfは一緒には使えないのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# [C言語] コメント文字列を無視して、数値データを読み込むプログラム部分について 5 2022/10/05 11:03
- SQL Server [SQLServer] テーブル名からカラム名を取得する 1 2022/08/23 21:20
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- Ruby 初心者プログラミング 3 2022/10/12 11:31
- C言語・C++・C# 10人分の生徒の英語の点数{32,34,41,38,40,26,14,46,42,50} と数学の点 2 2022/05/26 21:31
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- Visual Basic(VBA) ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています 17 2022/12/07 12:03
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- PHP PHP MySql ページング 2 2022/09/20 06:38
- C言語・C++・C# このプログラミングの問題を教えてほしいです。 キーボードからデータ数nとn個のデータを入力し、平均値 3 2022/12/19 22:51
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
array関数で格納した配列の型を...
-
[エクセル]連続する指定範囲か...
-
Excelのセルの色指定をVBAから...
-
表にフィルターをかけ、絞った...
-
ExcelのINDEXとMATCH関数でスピ...
-
エクセルで、絶対値の平均を算...
-
For Nextマクロの高速化につい...
-
16進数から2進数へ
-
Split関数でLong配列に格納する...
-
二次元配列の中の各行の要素を...
-
[VBA]改行入りのセルの値を配列...
-
iniファイルのキーと値を取得す...
-
ノーツのデータをVBScriptで取...
-
INDEX(D:D,L3)の意味は?
-
VBA listBoxについて
-
VBA-読み込んだテキストフ...
-
VBAで指定期間の範囲を抽出し、...
-
構造体を使った時刻表(C)
-
Excel VBA 配列の分割について
-
スプレットシートのGetTextにつ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelのセルの色指定をVBAから...
-
ExcelのINDEXとMATCH関数でスピ...
-
array関数で格納した配列の型を...
-
[エクセル]連続する指定範囲か...
-
表にフィルターをかけ、絞った...
-
VBA listBoxについて
-
エクセルで、絶対値の平均を算...
-
配列がとびとびである場合の書き方
-
DataSetから、DataTableを取得...
-
[VBA]改行入りのセルの値を配列...
-
VBA 配列に格納した値の平均の...
-
配列のSession格納、及び取得方...
-
【VBA】ユーザーフォーム リス...
-
エクセルでエラーを無視して一...
-
SUMPRODUCT関数を用いた最小値
-
Excel VBA 配列の分割について
-
Excelのオートフィルタで抽出し...
-
VB6.0 ファイルの一括読込み
-
Excel オートフィルタのリスト...
-
VBAで指定期間の範囲を抽出し、...
おすすめ情報