C++break语句问题 break语句的一旦执行不是应该直接跳出循环吗?为什么在我的这个程序里break执行后m总是1

#include<iostream>usingnamespacestd;voidmain(){intn,m;cout<<"判断输入的整数是否为素数,请输入整数N:";ci... #include<iostream>
using namespace std;
void main()
{
int n,m;
cout<<"判断输入的整数是否为素数,请输入整数N:";
cin>>n;
m=n-1;
for(m;m>1;m--)
{
if(n%m==0)
{cout<<"N不是素数"<<endl;break;}
}
if(m=1)
cout<<"N是素数"<<endl;
system("pause");
}
展开
 我来答
小海豚花蝴蝶大狮子
2012-02-26 · 超过10用户采纳过TA的回答
知道答主
回答量:25
采纳率:0%
帮助的人:13.7万
展开全部
不是那个break的问题,我改了如下:
#include<iostream>
using namespace std;
void main()
{
int n,m;
cout<<"判断输入的整数是否为素数,请输入整数N:";
cin>>n;
m=n-1;

for(m;m>1;m--)
{
if(n%m==0)
{cout<<"N不是素数"<<endl;break;}
}
if(m == 1) cout<<"N是素数"<<endl;
system("pause");
}
你是将那个赋值符号“=”与等号“==”搞混了,把那个if(m = 1) 改成 if(m == 1)就可以了!
dieq
2012-02-26 · TA获得超过981个赞
知道小有建树答主
回答量:553
采纳率:0%
帮助的人:484万
展开全部
if(m=1)!
应该是if(m==1)
建议你用好一点的IDE 带纠错的,不然这些小错误很难发现
比如 eclipse CDT
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友443419fb0
2012-02-26
知道答主
回答量:6
采纳率:0%
帮助的人:9.3万
展开全部
if(m=1) cout<<"N是素数"<<endl; 这句话有误,应该为: if(m==1) cout<<"N是素数"<<endl; 把"=="写成"="是很容易犯的错误,建议写成 if(1==m)。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
你是我的眼mmnn
2012-02-26
知道答主
回答量:96
采纳率:0%
帮助的人:24.9万
展开全部
貌似break不能用在这里吧,break有固定的用法。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式