程序Cmody071.c,已知三角形的2条边长,从键盘输入第3条边长,若他们能构成一个三角形,则求其面积;否则,提示出错信息。
#include <stdio.h>
#include <math.h>
void main()
{ float x=3, y=5, z,zc,mj;
printf("Please input the 3rd side: ");
scanf("%f", z );
if( y+z>x|| x+z>y|| x+y>z )
{ zc = (x+y+z)/2;
mj = sqrt(zc*(zc-x)*(zc-y)*(zc-z));
printf("area is %.2f\n",mj);
}
else
printf("error.\n");
getch();
}
二级c语言改错题
答案:4 悬赏:0 手机版
解决时间 2021-04-11 21:42
- 提问者网友:相思似海深
- 2021-04-11 06:30
最佳答案
- 五星知识达人网友:街头电车
- 2021-04-11 08:01
if( y+z>x|| x+z>y|| x+y>z )
要构成三角形,必须任意两边之和大于第三边,这个地方应该是与的关系而不是或。应该改成if( y+z>x&& x+z>y&& x+y>z )
scanf("%f", z ); 这个地方也赋值应该在z前面加上地址运算符&应该是scanf("%f",&z);
要构成三角形,必须任意两边之和大于第三边,这个地方应该是与的关系而不是或。应该改成if( y+z>x&& x+z>y&& x+y>z )
scanf("%f", z ); 这个地方也赋值应该在z前面加上地址运算符&应该是scanf("%f",&z);
全部回答
- 1楼网友:野味小生
- 2021-04-11 11:17
scanf后面的参数是不是掉了个取地址符&?我手机显示不出来
- 2楼网友:爱难随人意
- 2021-04-11 09:39
没错啊,只是你没有完全了解笑朋友,多看点书吧,哈哈。
- 3楼网友:玩世
- 2021-04-11 08:39
加个头文件就OK了
#include <stdio.h>
#include <math.h>
#include <conio.h>
void main()
{ float x=3, y=5, z,zc,mj;
printf("Please input the 3rd side: ");
scanf("%f", z );
if( y+z>x|| x+z>y|| x+y>z )
{ zc = (x+y+z)/2;
mj = sqrt(zc*(zc-x)*(zc-y)*(zc-z));
printf("area is %.2f\n",mj);
}
else
printf("error.\n");
getch();
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯