大神帮忙看看哪里写错了?关于三角形面积

yaoyao_xin 2014-07-17 06:58:31
#include "stdio.h"
#inculde "math.h"
main()
{
double a,b,c,p,s;
scanf("%d%d%d\n",a,b,c);
if (((a+b>c)&&(a-b<c))||((a+c>b)&&(a-c<b))||((b+c>a)&&(b-c<a)));
p=(a+b+c)/2;
s=sqrt(p(p-a)(p-b)(p-c));
printf("三角形面积=%d\n",s);
}
...全文
196 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
SabiAmeno 2014-07-19
  • 打赏
  • 举报
回复
在scanf中存入数据时,格式化字符中不要带\n...且没有对输入的数据取地址符
xian_wwq 2014-07-19
  • 打赏
  • 举报
回复
if (((a+b>c)&&(a-b<c))||((a+c>b)&&(a-c<b))||((b+c>a)&&(b-c<a))); 把分号取消 s=sqrt(p(p-a)(p-b)(p-c)); 乘号(*)不能不写, p*(p-a)*(p-b)*(p-c)
yaoyao_xin 2014-07-19
  • 打赏
  • 举报
回复
#include "stdio.h" #include "math.h" main() { double a,b,c,p,s; scanf("%d%d%d",&a,&b,&c); if (((a+b>c)&&(a-b<c))||((a+c>b)&&(a-c<b))||((b+c>a)&&(b-c<a))) p=(a+b+c)/2; s=sqrt(p*(p-a)*(p-b)*(p-c)); printf("三角形面积=%d\n",s); } 算出来面积一直是零,这是为什么?
yaoyao_xin 2014-07-18
  • 打赏
  • 举报
回复
引用 4 楼 zhao4zhong1 的回复:
printf里面的%和变量的一一对应关系 scanf里面的%和变量以及变量前加不加&的一一对应关系 是C代码中非常容易出错的地方,而且通常编译还不出错。 所以在编译源代码之前值得专门仔细检查一遍甚至多遍。 在每个最后不带\n的printf后面加fflush(stdout); 在每个不想受接收缓冲区旧内容影响的scanf前面加rewind(stdin); 另外请检查scanf的返回值。
#include "stdio.h" #include "math.h" main() { double a,b,c,p,s; scanf("%d%d%d",&a,&b,&c); if (((a+b>c)&&(a-b<c))||((a+c>b)&&(a-c<b))||((b+c>a)&&(b-c<a))); p=(a+b+c)/2; s=sqrt(p(p-a)(p-b)(p-c)); printf("三角形面积=%d\n",s); } 还是有错误,你说的那个不懂。。。
赵4老师 2014-07-18
  • 打赏
  • 举报
回复
printf里面的%和变量的一一对应关系 scanf里面的%和变量以及变量前加不加&的一一对应关系 是C代码中非常容易出错的地方,而且通常编译还不出错。 所以在编译源代码之前值得专门仔细检查一遍甚至多遍。 在每个最后不带\n的printf后面加fflush(stdout); 在每个不想受接收缓冲区旧内容影响的scanf前面加rewind(stdin); 另外请检查scanf的返回值。
yaoyao_xin 2014-07-18
  • 打赏
  • 举报
回复
还有错误啊 #include "stdio.h" #include "math.h" main() { double a,b,c,p,s; scanf("%d%d%d\n",a,b,c); if (((a+b>c)&&(a-b<c))||((a+c>b)&&(a-c<b))||((b+c>a)&&(b-c<a))); p=(a+b+c)/2; s=sqrt(p(p-a)(p-b)(p-c)); printf("三角形面积=%d\n",s); } --------------------Configuration: Cpp1 - Win32 Debug-------------------- Compiling... Cpp1.cpp C:\Users\Administrator\Desktop\Cpp1.cpp(8) : warning C4390: ';' : empty controlled statement found; is this the intent? C:\Users\Administrator\Desktop\Cpp1.cpp(9) : error C2064: term does not evaluate to a function C:\Users\Administrator\Desktop\Cpp1.cpp(11) : warning C4508: 'main' : function should return a value; 'void' return type assumed 执行 cl.exe 时出错.
layershow 2014-07-17
  • 打赏
  • 举报
回复
inculde 写错字母了应该是 include
yaoyao_xin 2014-07-17
  • 打赏
  • 举报
回复
哪里写错了?c:\users\administrator\desktop\cpp1.cpp(2) : fatal error C1021: invalid preprocessor command 'inculde' 执行 cl.exe 时出错.这是调试时候的提示,看不懂。。。。

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧