プロが教えるわが家の防犯対策術!

C言語初心者です。
どうしても分からないので投稿しました。

たとえば、
==読み込むファイル==
x 2 3 5 7 9 ・・・ 17
====
という、xの値が10通りある読み込むファイルがあるとします。
このファイルを読み込み、y=a*xという関数でそれぞれのxに対するyの値を出力したいのです。またこの時、aの値を1~10と変化させたときのyの値も出力したいのです。

出力ファイルのイメージは、
==出力ファイル==
(a_1,x_1)(a_1,x_2)・・・(a_1,x_10)
(a_2,x_1)(a_2,x_2)・・・(a_2,x_10)
(a_3,x_1)(a_3,x_2)・・・(a_3,x_10)
      ・・・
      ・・・
      ・・・
(a_9,x_1)(a_9,x_2)・・・(a_9,x_10)
(a_10,x_1)(a_10,x_2)・・・(a_10,x_10)

です。

反復、ファイル入出力、二次元配列を用いて作るのだと思うのですが、うまく作ることができません。

ファイル入出力などなしで、xの値を一つ指定し、aの値を1~10まで変化させたときのyの値を表示させるプログラムを作ったのですが、これもまだうまく動きません。

ご教授してもらえたらとても助かります。
よろしくお願いします。

#include <stdio.h>

void main(){

double y,a,x;
int i;

printf("x=\n");
scanf("%lf",&x);

for(a=0;a<10;a++){
a=a++;

y=a*x;

printf("y=%lf\n",y);

}

}

A 回答 (2件)

まったく自信はないですが、こんなのはどうでしょうか?


int j;
for(a=0,a<10,a++){
for(j=0,j<10,j++){
printf("y=%lf \n",a*x[j]);
}printf("\n");
}
なんとなく思っただけですので、専門家にまかせます(笑)
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
参考にさせてもらいます。

お礼日時:2009/07/01 16:42

元データがファイルにある以上ファイルI/Oは使わざるを得ませんが、あとはループだけでなんとかなります。


fopen(), fscanf(), fclose()辺りの使い方を調べてください。

>#1
aの値域が……
    • good
    • 0
この回答へのお礼

ありがとうございます。
fopen(), fscanf(), fclose()を調べながら、もう一度頑張ってみます。

お礼日時:2009/07/01 16:41

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