#include<stdio.h>
#include<math.h>
int main(void)
{
double dist(double m);
double x1,x2,y1,y2;
double distance=0.0;
printf("Input (x1,y1):");
scanf("%lf%lf",&x1,&x2);
printf("Input (x2,y2):");
scanf("%lf%lf",&x2,&y2);
distance=dist(x1,x2,y1,y2);
printf("distance=%.2f",distance);
return 0;
}
double dist(double x1,double x2,double y1,double y2)
{
double i=0.0;
i=pow(x1-x2,2)+(y1-y2,2);
distance=sqrt(i);
return distance;
}
提示实参过多,怎么改呢?
PS: dist 必须有 x1,y1,x2,y2这四个参数。
double dist(double m);
改成
double dist(double x1,double x2,double y1,double y2);
这个属于低级错误........
参数多的时候,就定义结构体吧。。。。。
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
struct Point
{
double x;
double y;
};
double dist(Point p1,Point p2)
{
double i=pow(p1.x-p2.x,2)+pow(p1.y-p2.y,2);
double distance=sqrt(i);
return distance;
}
int _tmain(int argc, _TCHAR* argv[])
{
Point p1,p2;
double distance=0.0;
printf("Input (x1,y1):");
scanf("%lf %lf",&p1.x,&p1.y);
printf("Input