C语言“调用子函数求两点间距离”

问题描述:

C语言“调用子函数求两点间距离”
【问题描述】
给定平面任意两点坐标(x1,y1)和(x2,y2),求这两点之间的距离(保留2位小数)。
要求定义和调用函数dist(x1,y1,x2,y2)计算两点间的距离。
【输入形式】
从键盘输入点坐标(x1,y1)
从键盘输入点坐标(x2,y2)
【输入输出样例1】(下划线部分表示输入)
Input(x1,y1):35.5 48.6
Input(x2,y2):210.7 104.5
distance=183.90
【样例说明】
输入提示符后要加一个空格.例如“Input (x1,y1):”,其中“:”后要加一个且只能一个空格.
输入的数据之间以一个空格相隔.
输出语句的“=”两边无空格.
英文字母区分大小写.必须严格按样例输入输出.*/
#include
#include
int main (void)
{
double x1,y1,x2,y2,distance;
double dist(double x1,double y1,double x2,double y2);
printf("Input(x1,y1):");
scanf("%lf,%lf",&x1,&y1);
printf("Input(x2,y2):");
scanf("%lf,%lf",&x2,&y2);
distance=dist(x1,y1,x2,y2);
printf("distance=%.2lf",distance);
return 0;
}
double dist(double x1,double y1,double x2,double y2)
{
double a,result;
a=(x1-x2)*(x1-x2)+(y1-y2)*(y1-y2);
result=sqrt(a);
return result;
}
为神魔无法运行啊?

可以运行啊.你把scanf("%lf,%lf",&x1,&y1);里么的逗号改成空格scanf("%lf %lf",&x1,&y1);