三亩地 三亩地SAN MU DI · CODE DIARY
ARTICLE DETAIL

日记详情

真实记录编程学习的某一天,欢迎挑你感兴趣的翻一翻。

C语言中求余运算符的使用解读

C语言中求余运算符的使用解读

C语言的算数运算符中最有特点的是求余运算符%,它可以应用到很多问题的求解中,下面是几个例子。

例1:输出1到100的整数,要求每行输出5个。

每行输出5个,意味着在5,10,15,20…等5的倍数的数字后面需要输出换行,而这些数的共同的特点是能被5整除,余数为0,描述成条件即为:i%5==0。

1

2

3

4

5

6

7

8

9

10

11

12

#include "stdio.h"

intmain()

{

inti;

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位整数,对其进行拆分,分别输出其个、十、百位。

整数拆分可以借助整除和求余运算来解决。

1

2

3

4

5

6

7

8

9

10

#include "stdio.h"

intmain()

{

intnum,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代表星期一到六。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

#include "stdio.h"

intmain()

{

intn,result;

printf("Please input n:");

scanf("%d",&n);

result = (n+5)%7;

switch(result)

{

case0:printf("\nThe day is Sunday!");break;

case1:printf("\nThe day is Monday!");break;

case2:printf("\nThe day is Tuesday!");break;

case3:printf("\nThe day is Wednesday!");break;

case4:printf("\nThe day is Thursday!");break;

case5:printf("\nThe day is Friday!");break;

case6:printf("\nThe day is Saturday!");break;

}

}

C语言中求余运算符的注意事项

求余运算符为“%”,在C语言中为双目运算符,且要求两个运算数都为整型的。

求出的余数与被除数的符号相同。

如:

总结

以上为个人经验,希望能给大家一个参考

← 返回列表