C语言中求余运算符的使用解读
C语言中求余运算符的使用
C语言的算数运算符中最有特点的是求余运算符%,它可以应用到很多问题的求解中,下面是几个例子。
例1:输出1到100的整数,要求每行输出5个。
每行输出5个,意味着在5,10,15,20…等5的倍数的数字后面需要输出换行,而这些数的共同的特点是能被5整除,余数为0,描述成条件即为:i%5==0。
#include "stdio.h"
int main()
{
int i;
for(i=1;i<=100;i++)
{
if(i%5==0)
printf("%3D\n",i);
else
printf("%3d ",i);
}
}
当然,每行不一定是输出5个,也可以是6个,7个…,n个,只需要把条件换成 i%n==0即可。
例2:从键盘输入一个3位整数,对其进行拆分,分别输出其个、十、百位。
整数拆分可以借助整除和求余运算来解决。
#include "stdio.h"
int main()
{
int num,g,s,b;
scanf("%d",&num);
b = num/100; //取出百位
s = num%100/10; //取出十位
g = num%10; //取出个位
printf("g = %d, s = %d, b = %d\n", g, s, b);
}
例3:已知今天是星期五,求n天后是星期几?从键盘输入n。
每个星期是7天,不管从星期几开始,7天后又转回到星期几,是典型的转圈问题。用%7来解决,0代表星期天,1-6代表星期一到六。
#include "stdio.h"
int main()
{
int n,result;
printf("Please input n:");
scanf("%d",&n);
result = (n+5)%7;
switch(result)
{
case 0: printf("\nThe day is Sunday!"); break;
case 1: printf("\nThe day is Monday!"); break;
case 2: printf("\nThe day is Tuesday!"); break;
case 3: printf("\nThe day is Wednesday!"); break;
case 4: printf("\nThe day is Thursday!"); break;
case 5: printf("\nThe day is Friday!"); break;
case 6: printf("\nThe day is Saturday!"); break;
}
}
C语言中求余运算符的注意事项
求余运算符为“%”,在C语言中为双目运算符,且要求两个运算数都为整型的。
求出的余数与被除数的符号相同。
如:
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。
相关文章