我的老师要我们从一个文本文件中找出每行由三个有序对组成的整数是否共线然后确定三角形的边,测量三角形的角度、周长、面积和类型。
应该为他想要的每件事创建一个函数,还是在我现在拥有的当前函数中?
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
void test_and_print (int x1,int y1,int x2,int y2,int x3,int y3);
int main(int argc, char** argv) {
int x1,y1,x2,y2,x3,y3;
FILE * inFile;
inFile = fopen("TrianglePointsData.txt", "r");
if (inFile == NULL )
{
printf("\nError opening file.");
exit(1);
}
while(fscanf(inFile,"%i %i %i %i %i %i", &x1,&y1,&x2,&y2,&x3,&y3)==6)
test_and_print(x1,y1,x2,y2,x3,y3);
return (EXIT_SUCCESS);
}
void test_and_print (int x1,int y1,int x2,int y2,int x3,int y3){
if((y2-y1)*(x3-x2) == (y3-y2)*(x2-x1)){
printf("\nThe ordered pairs %i %i %i %i %i %i are collinear. "
,x1,y1,x2,y2,x3,y3);
}
}
最佳答案
是的,您应该在单独的函数中完成每个任务,这会使您的代码干净且可重用。
这就是所谓的分而治之政策。
例如:-以后假设你在哪里直接给出了角度的测量值,并告诉你要确定三角形的类型。你会怎么做??,答案是您可以直接获取在该程序中创建的函数并计算答案,而无需重写任何内容(仅计算部分)你只需将角度测量值传递给该函数,然后在main() //local variable of main fucntion
中得到答案
关于c - 我应该以不同功能还是现在拥有的相同功能来执行它们?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22979082/