编译出错问题
源程序为:#include<stdio.h>
#include<math.h>
void main()
{
float a,b,c,s,dime;//其中dime表示面积
scanf("%f%f%f\n",&a,&b,&c);
s=(a+b+c)/2;
dime=sqrt(s*(s-a)(s-b)(s-c));//可能是错误语句但本人找不出毛病
printf("dime=%f\n",dime);
}
可是提示(error C2064: term does not evaluate to a function)到底哪里出错了?
----------------解决方案--------------------------------------------------------
s*(s-a)(s-b)(s-c)
->
s*(s-a)*(s-b)*(s-c)
缩略写法害死人
----------------解决方案--------------------------------------------------------
回复 2# 的帖子
哦谢了啊明白了 ----------------解决方案--------------------------------------------------------
[bo]以下是引用 [un]lonmaor[/un] 在 2008-3-3 21:54 的发言:[/bo]
s*(s-a)(s-b)(s-c)
->
s*(s-a)*(s-b)*(s-c)
缩略写法害死人
s*(s-a)(s-b)(s-c)
->
s*(s-a)*(s-b)*(s-c)
缩略写法害死人
顶
----------------解决方案--------------------------------------------------------
回复 2# 的帖子
接上例,在程序运行时scanf("%f%f%f\n",&a,&b,%c);
从语句中来解释的话,理论上是输入三个数据之后就直接可运行.
我在运行的时候却输入四个数据后才能运行,那第四个值代表什么意义?为什么会出现这种情况?
----------------解决方案--------------------------------------------------------
输入三个数字后要回车嘛...第四个字符就是回车咯
----------------解决方案--------------------------------------------------------
回复 6# 的帖子
我试过了不行! ----------------解决方案--------------------------------------------------------
运行时一定要输入四个数之后再按回车才能运行程序!!!
----------------解决方案--------------------------------------------------------
scanf("%f%f%f\n",&a,&b,&c);
改为:
scanf("%f %f %f",&a,&b,&c);
TC运行,通过。
----------------解决方案--------------------------------------------------------
[bo]以下是引用 [un]广陵绝唱[/un] 在 2008-3-3 22:57 的发言:[/bo]
scanf("%f%f%f\n",&a,&b,&c);
改为:
scanf("%f %f %f",&a,&b,&c);
TC运行,通过。
scanf("%f%f%f\n",&a,&b,&c);
改为:
scanf("%f %f %f",&a,&b,&c);
TC运行,通过。
额...偶比较粗心,呵呵
----------------解决方案--------------------------------------------------------