1102判断能否被3,5,7整除

描述

给定一个整数,判断它能否被357整除,并输出以下信息:
1、能同时被357整除(直接输出3 5 7,每个数中间一个空格);
2、只能被其中两个数整除(输出两个数,小的在前,大的在后。例如:3 5或者3 7或者5 7,中间用空格分隔);
3、只能被其中一个数整除(输出这个除数);
4、不能被任何数整除,输出小写字符‘n’,不包括单引号。

输入

输入一行,包括一个整数。

输出

输出一行,按照描述要求给出整数被357整除的情况。 

输入样例 1

105

输出样例 1

3 5 7

代码:
#include<iostream>
#include<cmath>
#include<iomanip>
using namespace std;
int main()
{
  int a,b;
  bool n=1;
  cin>>a;
  if(a%3==0) cout<<"3 "; n=0;
  if(a%5==0) cout<<"5 "; n=0;
  if(a%7==0) cout<<"7"; n=0;
  if(n) cout<<"n";
  return 0;
}
这代码看起来貌似没什么问题,其实问题已经摆在面前了。
#include<iostream>
#include<cmath>
#include<iomanip>
using namespace std;
int main()
{
  int a,b;
  bool n=1;
  cin>>a;
  if(a%3==0) cout<<"3 ";n=0;
       if(a%5==0) cout<<"5";n=0;
       if(a%7==0) cout<<"7"n=0;
  if(n) cout<<"n";
  return 0;
}
花括号呢?
#include<iostream>
#include<cmath>
#include<iomanip>
using namespace std;
int main()
{
  int a,b;
  bool n=1;
  cin>>a;
  if(a%3==0)
  {
    cout<<"3 ";
    n=0;
  }
  if(a%5==0)
  {
    cout<<"5 ";
    n=0;
  }
  if(a%7==0)
  {
    cout<<"7";
    n=0;
  }
  if(n) cout<<"n";
  return 0;
}
问题解决
原文地址:https://www.cnblogs.com/cyk20081108/p/12773075.html