台形公式により面積を求めよって問題でC++だと起動したんですけどCだと
error C2275: 'FILE' : この型は演算子として使用できません
: 'FILE' の宣言を確認してください。
error C2065: 'fpin' : 定義されていない識別子です。
っていうエラーがでてしまいます。どなたか解決策を教えてください。
#include <stdio.h>
int main()
{int i, j;
double S, h;
double x[15], y[15];
char c;
h = 0.1;
printf("入力\n");
FILE *fpin;
fpin=fopen("in.txt", "r");
while(fscanf(fpin, "%c", &c) != EOF)
for(i=0; i<15; i++)
{fscanf(fpin, "%lf", &x[i]);
fscanf(fpin, "%lf", &y[i]);
printf("x[%d] = %lf y[%d] = %lf \n", i, x[i], i, y[i]);
}
printf("面積\n");
S = 0.0;
for(i=0; i<14; ++i)
{
S += h*(y[i] + y[i+1])/2.0;
}
printf("S=%15.10lf \n", S);
getchar();
}
入力データ↓
0 3.44
0.1 3.81
0.2 4.19
0.3 4.58
0.4 4.96
0.5 5.34
0.6 5.72
0.7 6.08
0.8 6.44
0.9 6.79
1.0 7.12
1.1 7.43
1.2 7.72
1.3 7.97
1.4 7.98
Cでは関数内で使われる変数をコードの途中で宣言できません。
FILE* fpin; を
int i, j;
double S, h;
double x[15], y[15];
char c;
の直後あたりに移動してください。
ありがとうございます。解決しました。
ツイート | ![]() |