计蒜客【挑战难题】系列讲解(二)整除问题
题目
第2题:整除问题
判断一个数是否能被另一个整数整除是一个挺简单的问题,一般一个模运算就可以搞定了,懒惰的晓萌还是不想自己做,于是找到你帮他写代码,你就帮帮他吧。
输入包括两个由空格分开的整数M和N(1≤M,N≤500)。
输出包括一行,如果M可以被N整除就输出YES,否则输出NO(结果大小写敏感)。
样例输入
21 7
样例输出
YES
C 实现
#include <stdio.h>
int main(){
int M, N;
scanf("%d%d", &M, &N);
if ((M % N) == 0)
printf("YES");
else
printf("NO");
return 0;
}
它如何工作
本题目主要考查对选择结构(if语句)的使用,以及第五则运算(%,取余)。
输入M、N两个数后,通过if语句,判断M除以N的余数是否为0(即是否能整除),
如果是,则输出YES
如果否,则输出NO
小贴士
有些同学把题目中的“(1≤M,N≤500)”写到代码中,我为他们这样的想法感到很奇怪。
题目给出的只不过是M、N的取值范围,为什么会写到if语句的判断式中呢?
给出取值范围,一般是用来简化,或者限制某些数据的数量,比如数组的个数或者字符的长度等等。
目的是减少无谓内容的干扰,把重点放在算法上。