#include
#include
using namespace std;
int main()
{
int a; char n;
for(;cin>>a;){
if(a%3==0)
cout<<3<<" ";
if(a%5==0)
cout<<5<<" ";
if(a%7==0)
cout<<7<<endl;
if(a%3!=0 && a%5!=0 && a%7!=0)
cout<<n<<endl;
if(a%3==0 && a%5!=0 && a%7!=0)
cout<<endl;
if(a%3!=0 && a%5==0 && a%7!=0)
cout<<endl;
if(a%3==0 && a%5==0 && a&7!=0)
cout<<endl;
}
return 0;
}
if(a%3==0 && a%5==0 && a&7!=0)这一句写错了
a&7改成a%7
cin>>a;
while (a)
{
……
cin>>a;
}
改为这样看看怎样?
楼主用的是哪个编译器还有代码有没有漏写
#include
using namespace std;
int main()
{
int a; char n;
for(;cin>>a;){
if(a%3==0)
cout<<3<<" ";
if(a%5==0)
cout<<5<<" ";
if(a%7==0)
cout<<7<<endl;
if(a%3!=0 && a%5!=0 && a%7!=0)
cout<<n<<endl;
if(a%3==0 && a%5!=0 && a%7!=0)
cout<<endl;
if(a%3!=0 && a%5==0 && a%7!=0)
cout<<endl;
if(a%3==0 && a%5==0 && a&7!=0)
cout<<endl;
}
return 0;
}
你这程序是能够运行的,运行结果是3 5 7 。我用的是vc6.0。可能与你所用的工具有关。