#include
#include
int main() {
int a,b,c;
float z,s;
char ch;
do {
printf("请输入三角形的三边长:\n");
scanf("%d,%d,%d",&a,&b,&c);
while(a+b<=c||a+c<=b||b+c<=a) {
printf("数据无效,请重新输入:\n");
scanf("%d,%d,%d",&a,&b,&c);
}
z=(a+b+c)/2.0;
s=sqrt(z*(z-a)*(z-b)*(z-c));
printf("此三角形的面积为:%.2f",s);
printf("是否重新输入数据?Y 或 N ?\n您的选择是:");
ch=getchar();
} while (ch=='y'||ch=='Y');
}
循环结构求三角形面积(sqrt)陷入无限循环
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- threenewbee 2018-10-31 16:19关注
#include <stdio.h> #include <math.h> int main() { int a,b,c; float z,s; char ch; do { printf("请输入三角形的三边长:\n"); scanf("%d,%d,%d",&a,&b,&c); while(a+b<=c||a+c<=b||b+c<=a) { printf("数据无效,请重新输入:\n"); scanf("%d,%d,%d",&a,&b,&c); } z=(a+b+c)/2.0; s=sqrt(z*(z-a)*(z-b)*(z-c)); printf("此三角形的面积为:%.2f\n",s); ch=getchar(); printf("是否重新输入数据?Y 或 N ?\n您的选择是:"); ch=getchar(); } while (ch=='y'||ch=='Y'); }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥50 求解vmware的网络模式问题 别拿AI回答
- ¥24 EFS加密后,在同一台电脑解密出错,证书界面找不到对应指纹的证书,未备份证书,求在原电脑解密的方法,可行即采纳
- ¥15 springboot 3.0 实现Security 6.x版本集成
- ¥15 PHP-8.1 镜像无法用dockerfile里的CMD命令启动 只能进入容器启动,如何解决?(操作系统-ubuntu)
- ¥30 请帮我解决一下下面六个代码
- ¥15 关于资源监视工具的e-care有知道的嘛
- ¥35 MIMO天线稀疏阵列排布问题
- ¥60 用visual studio编写程序,利用间接平差求解水准网
- ¥15 Llama如何调用shell或者Python
- ¥20 谁能帮我挨个解读这个php语言编的代码什么意思?