ファイルの入出力を習ったのですが出力に困っています

例えば
1 1.000000 1.000000 1.000000
2 1.000000 1.000000 1.000000
という内容のtxtファイルがあり、
それぞれの数字を変数に入れて出力したいのですが、

while(fscanf(fpi,"%d %lf %lf %lf", &i, heikin2, saikou2, saitei2) != EOF){
printf("%d %f %f %f\n", i, a, b, c);
}
とすると

1 0.000000 0.000000 1.#QNAN0
2 0.000000 0.000000 1.#QNAN0
と出ます、どうしてでしょうか?
a,b,cは配列の変数です