08、求x的y的幂次方的最后3位数——循环

求x的y的幂次方的最后3位数

求x的y的幂次方的最后3位数

程序代码如下:

  /*
        2017年3月12日14:07:05
        功能:程序求x的y的幂次方的最后3位数
    */
    #include"stdio.h"
    void fun(int);
    int main()
    {
        int x, y;
        int x_power_y = 1;
        printf("please int two number x and y :");
        scanf("%d %d", &x, &y);
        for (int i = 0; i < y; i++)
        {
            x_power_y *= x;
        }
        if (x_power_y < 999)
        {
            printf("the last three number of the x power y is %d ", x_power_y);
        }
        else
        {
            fun(x_power_y);                                                                    //大于999,进入调用函数
        }

    }

    void fun(int x_power_y)
    {
        int first = x_power_y % 10;                                                            //此时求得是最后一位上的数值
        int second = (x_power_y % 100 - first * 1) / 10;                                    //x_power_y % 100是最后两位上的数值
        int thrid = (x_power_y % 1000 - second * 10 - first * 1) / 100;
        printf("the last three number of the x power y is %d 
", thrid*100+second*10+first);
    }
    /*
        总结;
        在VC++6.0中显示的结果:
        ——————————————————
        please int two number x and y :11 3
        the last three number of the x power y is 331
        ——————————————————
    */

  

原文地址:https://www.cnblogs.com/wxt19941024/p/6537808.html