天天看点

C 3,5,7整除

给定一个正整数n(n<1000000000),判断它是否被3,5,7整除,并输入以下信息:

(1)能同时被3,5,7整除(直接输出3 5 7,每个数中间一个空格);

(2)能够被其中两个数整除(输出两个数,小的在前大的在后。例如3 5 或者3 7 或者 5 7,中间用空格分隔);

(3)只能被其中一个数整除(输出这个整数);

(4)不能被任何数整除,输出小写字符’n‘,不包括单引号。

输出时两个数之间用一个空格隔开,最后一个数后面无空格,不能有多余的空格。

【输入】

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

【输出】

输出一行,按照描述要求给出整数倍3,5,7整除的情况。

【样例输入输出】

a.in a.out
105 3 5 7

输出说明:3和5之间一个空格,5和7之间一个空格,7后面没有空格。最后有一个回车换行。

代码如下:

#include <stdio.h>

int main(){

long int s;

int i=0,j=0,k=0,m=0;

freopen("a.in","r",stdin); //在工程文件夹下读取a.in中的数据

scanf("%d",&s);

freopen("a.out","w",stdout); //将结果输出到a.out中

if(s%3==0)

{printf("3");i=1;m=1;}

if(s%5==0)

{

if(i==1)

printf(" ");

printf("5");j=1;m=1;

}

if(s%7==0)

{

if(j==1 || i==1)

printf(" ");

printf("7");k=1;m=1;}

if(m==0)

printf("n\n");

else

printf("\n");

return 0;

}

注意:需要在工程文件夹下建立a.in用于读取输入数据,代码运行后输出结果不再控制台显示,而是存储到工程文件夹下的a.out文件中。

继续阅读