程序中illegal break是什么意思,哪错了
答案:4 悬赏:30 手机版
解决时间 2021-01-10 19:30
- 提问者网友:夢醒日落
- 2021-01-09 23:19
程序中illegal break是什么意思,哪错了
最佳答案
- 五星知识达人网友:酒安江南
- 2021-01-10 00:03
break这组语句已经不属于for循环体了
若for循环内含有多条语句的话应该用{}括起来。
而break应该用在循环内部
#include
main()
{
double m,n,s=1.0;
for (n=1;;n++)
{
m=1/((2*n-1)*(2*n));
s=s*m;
if (s<0.0001)
break;
}
printf("最终的积为%f",s);
}
若for循环内含有多条语句的话应该用{}括起来。
而break应该用在循环内部
#include
main()
{
double m,n,s=1.0;
for (n=1;;n++)
{
m=1/((2*n-1)*(2*n));
s=s*m;
if (s<0.0001)
break;
}
printf("最终的积为%f",s);
}
全部回答
- 1楼网友:山河有幸埋战骨
- 2021-01-10 03:38
那句原意是break用错了,不过看了一下程序,感觉是for循环没加花括号
修改了一下:
#include
main()
{
double m,n,s=1.0;
for (n=1;;n++)
{
m=1/((2*n-1)*(2*n));
s=s*m;
if (s<0.0001) break;
}
printf("最终的积为%f",s);
}
修改了一下:
#include
main()
{
double m,n,s=1.0;
for (n=1;;n++)
{
m=1/((2*n-1)*(2*n));
s=s*m;
if (s<0.0001) break;
}
printf("最终的积为%f",s);
}
- 2楼网友:思契十里
- 2021-01-10 02:52
1.少了括号
2.s不可能满足 应该是m参与if的条件
3.%f不能体现精度
#include
main()
{
double m,n,s=1.0;
for (n=1;;n++){
m=1/((2*n-1)*(2*n));
s=s*m;
if (m<0.0001)
break;}
printf("最终的积为%e",s);
}
2.s不可能满足 应该是m参与if的条件
3.%f不能体现精度
#include
main()
{
double m,n,s=1.0;
for (n=1;;n++){
m=1/((2*n-1)*(2*n));
s=s*m;
if (m<0.0001)
break;}
printf("最终的积为%e",s);
}
- 3楼网友:胯下狙击手
- 2021-01-10 01:33
continue和break用来跳出循环的。
你用return试试。
你用return试试。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯