为了账号安全,请及时绑定邮箱和手机立即绑定

c++素数问题

c++素数问题

C++
the__sky123 2017-12-29 11:44:50
#include <iostream>#include <cmath>using namespace std;int main(){ int i,j; cin>>i; bool ch;  for(j=2;j<=sqrt(i);j++) { if(i%j==0) ch=true;   //真 不是素数  if(i%j!=0) ch=false; } if(ch)   /*******/ cout<<"不是素数"<<endl; else cout<<"是素数"<<endl; }在/***/处,若改为if(ch=true)不能正常输出,但是if(ch==false)可以正常输出,为什么????
查看完整描述

2 回答

已采纳
?
慕用4063026

TA贡献195条经验 获得超115个赞

你自己用了bool声明,if是判断语句,ch=true是个赋值语句,当然不行了,要==

#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int i,j;
cin>>i;
bool ch; 
for(j=2;j<=sqrt(i);j++)
{
if(i%j==0)
ch=true;   //真 不是素数 
if(i%j!=0)
ch=false;
}
if(ch==true)   /*这里要判断*/
cout<<"不是素数"<<endl;
else
cout<<"是素数"<<endl;
}


查看完整回答
1 反对 回复 2017-12-30
?
onemoo

TA贡献883条经验 获得超454个赞

你还没发现你写的一个是“=”,一个是“==”吗?

现在明白了吗?

查看完整回答
1 反对 回复 2017-12-29
  • 2 回答
  • 0 关注
  • 1257 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信