描述
给定一个整数,判断它能否被3,5,7整除,并输出以下信息:
1、能同时被3,5,7整除(直接输出3 5 7,每个数中间一个空格);
2、只能被其中两个数整除(输出两个数,小的在前,大的在后。例如:3 5或者 3 7或者5 7,中间用空格分隔);
3、只能被其中一个数整除(输出这个除数);
4、不能被任何数整除,输出小写字符‘n’,不包括单引号。
输入
输入一行,包括一个整数。
输出
输出一行,按照描述要求给出整数被3,5,7整除的情况。
样例输入
105
样例输出
3 5 7
源码
//方法一:可以使用if——else if——else语句
#include<stdio.h>
int main()
{
int n;
scanf("%d",&n);
if( (n%3==0) && (n%5==0) && (n%7==0)){
printf("3 5 7");
}
else if( (n%3==0) && (n%5==0) ){
printf("3 5");
}
else if( (n%3==0) && (n%7==0) ){
printf("3 7");
}
else if( (n%5==0) && (n%7==0) ){
printf("5 7");
}
else if(n%3==0){
printf("3");
}
else if(n%5==0){
printf("5");
}
else if(n%7==0){
printf("7");
}
else printf("n");
return 0;
}
//方法二:可以混合使用if——else if——else语句和switch case语句
#include<stdio.h>
int main()
{
int n,k;
scanf("%d",&n);
if( (n%3==0) && (n%5==0) && (n%7==0)){
k=1;
}
else if( (n%3==0) && (n%5==0) ){
k=2;
}
else if( (n%3==0) && (n%7==0) ){
k=3;
}
else if( (n%5==0) && (n%7==0) ){
k=4;
}
else if(n%3==0){
k=5;
}
else if(n%5==0){
k=6;
}
else if(n%7==0){
k=7;
}
else k=8;
switch(k){
case 1:printf("3 5 7"); break;
case 2:printf("3 5"); break;
case 3:printf("3 7"); break;
case 4:printf("5 7"); break;
case 5:printf("3"); break;
case 6:printf("5"); break;
case 7:printf("7"); break;
default:printf("n");
}
return 0;
}
//方法三:使用if语句
#include<stdio.h>
int main()
{
int n,k=0;
scanf("%d",&n);
if(n%3==0){
printf("3 ");
k++;
}
if(n%5==0){
printf("5 ");
k++;
}
if(n%7==0){
printf("7 ");
k++;
}
if(k==0)
printf("n");
return 0;
}