为了账号安全,请及时绑定邮箱和手机立即绑定

C语言可以运行得不出结果。

C语言可以运行得不出结果。

C
慕瓜0505897 2017-10-12 18:41:14
#include<stdio.h>#include<math.h>int main(){ double x1, x2, y1, y2,distance; scanf_s("%lf%lf%lf%lf", &x1, &y1, &x2, &y2); printf("%.2f", sqrt((x1 - x2)*(x1 - x2) + (y1 - y2)*(y1 - y2))); return 0;}
查看完整描述

5 回答

?
onemoo

TA贡献883条经验 获得超454个赞

除了别人说的中文标点的问题外,这个代码没什么大问题。而且我猜也不是中文标点的事,否则根本就无法编译,更谈不上运行了。

你说的“得不出结果”是什么意思? 

是它一直等你输入吗?  如果这样的话,确定下你输入的 4个数是不是用空格隔开了。

查看完整回答
反对 回复 2017-10-14
?
望远

TA贡献1017条经验 获得超1032个赞

#include<stdio.h>
#include<math.h>
int main()
{
double x1, x2, y1, y2,distance;//y2后面那个是中文的,
scanf_s("%lf%lf%lf%lf", &x1, &y1, &x2, &y2);
printf("%.2f", sqrt((x1 - x2)*(x1 - x2) + (y1 - y2)*(y1 - y2)));
//sqrt函数返回的是一个double类型数据,数据输出时以%lf输出
return 0;
}


查看完整回答
反对 回复 2017-10-13
  • onemoo
    onemoo
    printf 中 %f 可以用于 double 类型,不是必须用 %lf。
?
暗域天堂

TA贡献27条经验 获得超13个赞

#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int main()
{
	double x1, x2, y1, y2;
	scanf_s("%lf %lf %lf %lf", &x1, &y1, &x2, &y2);

	printf("%.2f\n", sqrt((x1 - x2) * (x1 - x2) + (y1 - y2) * (y1 - y2)));

	system("pause");

	return 0;
}


查看完整回答
反对 回复 2017-10-13
?
无为自然

TA贡献3条经验 获得超0个赞

把.distance去掉,输入语句就是scanf不要_s,运行之后需要输入四个数字才能有结果  因为你的sanf就是要求用户输入,如果你看不清就在scanf这条语句前面加一条printf("请输入四个数:");

查看完整回答
反对 回复 2017-10-13
?
慕工程6039471

TA贡献2条经验 获得超1个赞

还没学到 抱歉

查看完整回答
反对 回复 2017-10-13
  • 5 回答
  • 0 关注
  • 2488 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信