如何用C语言读取TXT格式文件中的数据进行运算

比方说一个txt文件中的内容是:
5 18674 1.0 2.0 4.0 5.0 7.8 3.5 5.0 0.4 1.0 0.4

(一共三组数据,5代表是边形,12867是这个多边形编号, 后面是各个顶点的坐标 x y。)

求大神帮我写一下code读取txt里多边形的顶点坐标然后算面积
多边形面积公式是 , 1/2 *SUM( x[n]*y[n+1] - x[n+1]*y[n] ) n从0到顶点数
万分感谢!

#include <stdio.h>
#include <malloc.h>

void main()
{
int n, no, i;
FILE * fp = fopen("data.txt", "r);
float * x, *y, result;
if(fp == NULL) return;
fscanf(fp, "%d %d", &n, &no);
x = (float *)malloc(n * sizeof(float);
y = (float *)malloc(n * sizeof(float);
for(i = 0; i<n ; i++) fscanf("%f %f", x + i, y + i);
result = 0.0f;
for(i=0; i<n-1); i++) result += 0.5f * (x[i] * y[i+1] - x[i+1] * y[i]);
printf("%d result is %f\n", no, result);
free(x);
free(y);
fclose(fp);
}

温馨提示:答案为网友推荐,仅供参考
相似回答