C语言 整除的问题

输入一个整数,判断它能否被3,5,7整除,并输出下列之一:
1 能同时被3,5,7整除;
2 能同时被其中两个整除(要指出是哪两个);
3 能被其中一个整除(指出是哪个);
4 不能被它们任一个整除。

#include "stdio.h"
main()
{int n;
printf("please input the number:");
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整除");
if(n%3==0&&n%7==0) printf("它能被3,7整除");
if(n%5==0&&n%7==0) printf("它能被5,7整除");
if(n%3==0&&n%5!=0&&n%7!=0) printf("它能被3整除");
if(n%5==0&&n%3!=0&&n%7!=0) printf("它能被5整除");
if(n%7==0&&n%5!=0&&n%3!=0) printf("它能被7整除");
if(n%3!=0&&n%5!=0&&n%7!=0 ) printf("它不能被3,5,7整除");}
getch();
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-07-11
c语言的语法我忘完了,不过你这个题的思路我给你说一下,
dim a,b,c,d as int
input a(这里输入一个整数也就是被除数)
if a /(整除号)3=0 then
printf a "能被3整除"
end if
if a/5=0then
print a 能被5整除
能被七整除,同上,
能被两个数整除:
if a /3=0 and a/5=0 then
printf a "能被3,5整除“
同理再写两条语句
不能被任何一个:
if a/3<>0 or a/5<>0 or a/7<>0 then
printf "不能被任何一个数除“
希望对你有帮助思路就是这样,你试试
第2个回答  2009-07-11
#include <stdio.h>
int main()
{
int n, a, b, c;
scanf("%d", &n);
a = (n % 3) == 0;
b = (n % 5) == 0;
c = (n % 7) == 0;

switch (a + b + c) {
case 3:
printf("能同时被3,5,7整除\n");
break;
case 2:
printf("能同时被其中两个整除");
if (a == 1) printf("%d ", 3);
if (b == 1) printf("%d ", 5);
if (c == 1) printf("%d ", 7);
break;
case 1:
printf("能被其中一个整除");
if (a == 1) printf("%d ", 3);
if (b == 1) printf("%d ", 5);
if (c == 1) printf("%d ", 7);
break;
default:
printf("不能被它们任一个整除\n");
}

return 0;
}
第3个回答  2009-07-11
#include "stdio.h"
void main()
{
int a;
printf("请输入一个整数:\n");
scanf("%d",&a);

if((a%3==0||a%5==0||a%7==0))
{
if(a%3==0)
printf("3 ");
if(a%5==0)
printf("5 ");
if(a%7==0)
printf("7 ");
printf("整除\n");
}
else
printf("不能被它们任一个整除。");

}
第4个回答  2019-08-04
c=5,是商,d=5是余数,如果a=56,b=10,c=5,d=6
整数除以整数是
55/10
55/10.0的话会把两个数转化成double再相除,结果如果放int中会截断小数

关于C语言中整除的问题?
double是双精度 占8个字节 即0.0000000 float是单精度 占4个字节 即0.000 C语言中 除法得到的数值类型与除数或被除数中占用字节数多的一样 int->float->double 楼主的问题 double数X,Y相除得一double数 即1.5

c语言是整除问题
a%b=0&&a%c=0,a要能被b整除同时又要能被c被除,加个IF就是说这个式子成立的话运行printf("No\\n"); 需要逻辑0或非在main函数中。if(a%b==0&&a%c==0),这才有一个完整的判断,不然IF语句不能成立。a%b!=0||a%c!=0,a除以b的余数不等于0,或者a除以c的余数不等于0,两个中只...

对C语言中整除运算符的困惑!
C语言中,对于除法操作来说,结果的类型和除数被除数的类型是一样的,也就是说,如果除数和被除数都是int型,那么结果也是int型,所以7\/3的结果是2,如果除数和被除数中有一个是float型,那么结果就是float型,所以不需要取整,2.0\/(2*5.0) = 2.0\/10.0 = 0.2。这个程序你可以试试把float...

c语言问题找出最少10个被235整除且同时保持1的数
关于c语言问题找出最少10个被2 ^ 3 ^ 5整除且同时保持1的数这个很多人还不知道,今天来为大家解答以上的问题,现在让我们一起来看看吧!1、#include "stdafx.h"#includeusing namespace std;int main(){ int i=0;\/\/计数 int c=1; int a[10];\/\/用来存储 do { if((c%2 == 1)&&(...

c语言的问题。整除用c语言怎么表示?m%n==0是啥意思?2012被4整除用表达 ...
C语言中,整除的表示方法就是m%n==0.“%”表示求余,也就是说m除以n的余数。当余数为0,也就说明m与n可以整除了。 当然除法的“\/”符号也有一个特例,就是当该符号左右两边均为整形数时(9\/2),得到的答案只取整数部分(9\/2=4.5,如果输出printf(“%d”,(9\/2));输出结果为4)。

C语言的整除知识加范围?
显然大数除法是杀鸡用牛刀 所以找规律:能被12整除的数,必然能同时被3和4整除;能被3整数的数,各个位上的数字之和必然是3的倍数;能被4整除的数,个位+十位组成的两位数必然是4的倍数.根据以上3点就直接能判断出任意位数的情况下,是否能被12整除 include <stdio.h> int mod3_0(char *s){ int ...

C语言里“\/”在表示两个数相除时 “向下取整”缺陷解决方案
结果是准确的值。2. 数据类型转换问题:数字后面添加 .f 表示这是一个浮点数,浮点数的运算符 \/ 是普通的除法,不是整除,得到的结果仍然是浮点数,转换成整数的时候直接把小数点后面的舍去了,不能实现向上取整。3. 向下取整不能说是C的缺陷。否则,反过来,难道默认向上取整就不是缺陷?

c语言中整除是怎么回事?
在 C 语言中,两个整数相除的结果分为两种情况:如果两个整数都是整型,那么它们相除的结果也是整型,结果将向 0 取整,即舍弃小数点后的数值。例如:int a = 7, b = 3, c; c = a \/ b; 则 c 的值为 2。如果两个整数中至少有一个是浮点型,则它们相除的结果也是浮点型,结果保留小数点...

c语言除法问题
a=3\/4.0 a=3.0\/4 a=3.0\/4.0 都可以 因为3\/4,c语言把它作为整数除法了,自然结果是0了

c语言中的\/(整除)究竟怎么用?比如下面几个例子: 1.float n;n=1\/2...
c语言中的\/(除运算符)是否完成整除运算,是要看参与运算的两个运算数的。如果其中有一个是浮点数,则运算结果是浮点数(带有小数的),如果两个数全是整数,则运算结果是整数类型,不带小数!所以,1.float n;n=1\/2=0 2.float n;n=2.0\/4=0.5 ...

相似回答