-1
我試圖創建一個程序讀取三個點(巫形成一個三角形)從這樣給出b.txt
文件:
(-3,-3) (4,-5.5) (-2,1)
後來我需要計算三角形面積(本例中P = 15.25)。
我的代碼:從txt文件讀取的十進制數和用C使用它們
#include <stdio.h>
int main()
{
FILE *fp=fopen("b.txt","r");
int i=0;
float x[3],y[3];
char bracket,comma;
while(fscanf(fp,"%c%f%c%f%c",&bracket,&x[i],&comma,&y[i],&bracket)==5)
i++;
for(i=0;i<3;i++)
printf("%f %f\n",x[i],y[i]);
fclose(fp);
return 0;
}
結果我得到:
0.000000 1102137707490764237397621571846144.000000 0.000000 0.000000 0.000000 0.000000
誰能給我一個想法如何閱讀這些數字呢? 在此先感謝! PS 我知道如何用fgetc讀取數字(用char),但後來我不能用它們來計算三角形區域。
'的fscanf(FP, 「%c%f%c%f%c」,&bracket,&x [i],&comma,&y [i],&bracket)'對我來說看起來像是UB ......你傳遞兩次相同的指針'&bracket'。 –
@EugeneSh。我使用該支架只是爲了跳過這種情況下的垃圾桶支架 –
@xing仍然不能正常工作 –