问题:
求一个整数任意次方的最后三位数,即求x^y的最后三位数,x和y的值由键盘输入。
思路:
- 出现次方的操作,肯定要引入数学库——#include <math.h>
- 想要输出最后三位数,可用递归实现,也可设一个数组,给取的数字放进对应的数组位中,输出数组即可。
- 这里用递归实现。
- 不论采用递归还是数组,敲完代码后,都在脑子里跑一遍流程,看是否合理即验证。
代码如下:
#include <stdio.h>
#include <math.h>
void digui(int n,int i)
{
if(i<2)
digui(n/10,i+1);
printf("%d",n%10);
}
int main()
{
int x,y;
scanf("%d %d",&x,&y);
int n=pow(x,y);
digui(n,0);
return 0;
}