ファイルの入出力に関する質問

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
lookie

ファイルの入出力に関する質問

#1

投稿記事 by lookie » 13年前

はじめまして、c言語初心者で分からない部分があり質問させていただきます。
c言語でのファイルの入出力の練習のために、
下のような2048行X1列の数値が書かれているcsvファイルを読み込み、
0.08
2.7809
33.07



8.30
それを新たなcsvファイルにそのまま書き出すプログラムを作ってみました。
出力されたcsvファイルには同じ数字が書かれているはずですが、
なぜか全て0になってしまいます。
0.000000
0.000000



0.000000
上手く数値を読み込むにはどうしたらいいでしょうか?教えてください。

コード:

#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#define A 2048
	double x[A];
	char st1[100];
	char st2[]=".csv";
	char str[100];
	char str2[100];
	FILE *IN1,*OUT;

int main(){
	printf("拡張子の前までのファイル名を入力してください\n");
	printf("例(neko.csv→neko)\n");
	gets(st1);
	printf("読みこんだんよ\n");

	sprintf_s(str,"%s%s",st1,st2);
	IN1=fopen(str,"r");

	for(unsigned int i=0;i<A;i++){
		fscanf(IN1,"%f",&x[i]);
	}

	sprintf_s(str,"noudo_%s%s",st1,st2);
	OUT=fopen(str,"w");

	for(unsigned int i=0;i<A;i++){
		fprintf(OUT,"%f\n",x[i]);
	}

	fclose(IN1);
	fclose(OUT);

	printf("終了");
	getchar();
	return 0;
}

アバター
へろりくしょん
記事: 92
登録日時: 14年前
住所: 福岡

Re: ファイルの入出力に関する質問

#2

投稿記事 by へろりくしょん » 13年前

22行目。 fscanf() 関数における double 型の書式指定子は %lf です。

lookie

Re: ファイルの入出力に関する質問

#3

投稿記事 by lookie » 13年前

ありがとうございます、解決しました。

閉鎖

“C言語何でも質問掲示板” へ戻る