输入三角形的3条边a,b,c,如果能构成一个三角形,则输出面积,否则输出Error.#include#includeint main(){\x09double a,b,c,p,s;\x09scanf("%lf%lf%lf",&a,&b,&c);\x09if(a+b>c,b+c>a,c+a>b){p=(a+b+c)/2,s=sqrt(p*(p-a)*(p-b)*(p-c));printf("

来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/23 17:44:28
输入三角形的3条边a,b,c,如果能构成一个三角形,则输出面积,否则输出Error.#include#includeintmain(){\x09doublea,b,c,p,s;\x09scanf("%

输入三角形的3条边a,b,c,如果能构成一个三角形,则输出面积,否则输出Error.#include#includeint main(){\x09double a,b,c,p,s;\x09scanf("%lf%lf%lf",&a,&b,&c);\x09if(a+b>c,b+c>a,c+a>b){p=(a+b+c)/2,s=sqrt(p*(p-a)*(p-b)*(p-c));printf("
输入三角形的3条边a,b,c,如果能构成一个三角形,则输出面积,否则输出Error.
#include
#include
int main()
{
\x09double a,b,c,p,s;
\x09scanf("%lf%lf%lf",&a,&b,&c);
\x09if(a+b>c,b+c>a,c+a>b)
{p=(a+b+c)/2,
s=sqrt(p*(p-a)*(p-b)*(p-c));
printf("%.2f",s);}
\x09else
\x09printf("error");
\x09return 0;
}为什么错了,比如我输入1 3 4输出为什么不是errow

输入三角形的3条边a,b,c,如果能构成一个三角形,则输出面积,否则输出Error.#include#includeint main(){\x09double a,b,c,p,s;\x09scanf("%lf%lf%lf",&a,&b,&c);\x09if(a+b>c,b+c>a,c+a>b){p=(a+b+c)/2,s=sqrt(p*(p-a)*(p-b)*(p-c));printf("
虽然我N年不玩语言了,但明显问题出在下面之上:
if(a+b>c,b+c>a,c+a>b)
这句中a+b>c,b+c>a,c+a>b三个逻辑表达式关系应该是a+b>c与b+c>a与c+a>b
而逗号运算符就是取最后一个式子的值,也就是if(c+a>b),结果当然出错.
要不你改成if(a+b>c&&b+c>a&&c+a>b)试试

两边之和大于第三边 1+3=4??

判断三边是否构成三角形时,应该用if(a+b>c&&b+c>a&&c+a>b)
&&是逻辑与运算符 “,”在这里是没有意义的嘛

if语句中的判断式有问题∶逗号运算是看最后一个运算式的值是一还是零,最后一个式子为1+4>3结果为1程序就出错了;所以应改为“与”运算“&”,

电阻最大值:
LED电压=1.7*3=5.1
电阻分压:14.5-5.1=9.4
由R=U/I得出 电阻为:9.4/0.1=94欧,电阻功率:9.4*0.1=0.94W,选2W的电阻。
电阻最小值:
LED电压=2.3*3=6.9
电阻分压:12.5-6.9=5.6
由R=U/I得出 电阻为:5.6/1.0=56欧,电阻功率:5.6*0.1=...

全部展开

电阻最大值:
LED电压=1.7*3=5.1
电阻分压:14.5-5.1=9.4
由R=U/I得出 电阻为:9.4/0.1=94欧,电阻功率:9.4*0.1=0.94W,选2W的电阻。
电阻最小值:
LED电压=2.3*3=6.9
电阻分压:12.5-6.9=5.6
由R=U/I得出 电阻为:5.6/1.0=56欧,电阻功率:5.6*0.1=0.56W,选1W电阻。
以上是按LED灯电流0.1A计算,但是实际是LED电压越高,电流越大,即用94欧电阻时,电路电流更小,可能不足0.1A,而56欧电阻时,将可能超过0.1A。

收起