[問題] 讀寫檔案 並計算二維座標距離 後排序
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
C語言
問題(Question):
這是我們的小考XD
我只寫到計算距離
排序和寫入檔案就不會了
下面是我們的題目
1. 設計函數,計畫平面上兩點(x1,y1)(x2,y2)距離.
double distance(double x1,double y1,double x2,double y2)
2. 讀入下示檔案,算出每一列兩點距離,顯示到螢幕.
point.txt
--------------------
25.3 3.4 23.2 44.2
23.4 56.4 34 22
53.2 33.4 45.3 54.3
3.4 5.5 3.5 6.7
2.4 7.5 3.5 3.5
---------------------
3. 讀入point.txt檔案,依兩點距離排序,輸出到point2.txt檔.
程式碼(Code):(請善用置底文網頁, 記得排版)
#include <stdio.h>
#include <math.h>
double distance(double x1,double y1,double x2,double y2)
{double i,j,a;
i=x2-x1;
j=y2-y1;
a=pow((i*i+j*j),0.5);
return a;
}
int main(int argc, char *argv[])
{int n=1;
double x1,y1,x2,y2,a[n];
FILE *fp,*fp1;
fp = fopen("c:\\point.txt","r");
while(feof(fp)==0)
{fscanf(fp,"%lf %lf %lf %lf\n",&x1,&y1,&x2,&y2);
printf("第%d組 : x1=%lf ,y1=%lf ,x2=%lf ,y2=%lf\n",n,x1,y1,x2,y2);n++;
a[n]=distance(x1,y1,x2,y2);
printf("距離 = %lf\n\n",a[n]);
}
fp1 = fopen("c:\\point2.txt","w");
fclose(fp);
fclose(fp1);
}
補充說明(Supplement):
有請神通廣大的鄉民幫忙解惑~~
感謝!!
另外還有個問題,我在家自己做都讀不到txt檔
我用的是Pelles C IDE這個軟體,在學校也是
但是回到家都讀不出txt檔
會顯示 "0x00401824"指令參考的"0x00000000"記憶體,該記憶體不能為read
感謝各位~~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.126.42.146
※ 編輯: kusou86el 來自: 59.126.42.146 (01/12 11:52)
→
01/12 12:07, , 1F
01/12 12:07, 1F
→
01/12 12:08, , 2F
01/12 12:08, 2F
→
01/12 14:09, , 3F
01/12 14:09, 3F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章