1. #include "stdio.h"
  2. #include"stdlib.h"
  3. #define max 500
  4. void yiwei(int *a,int n,int m)
  5. {
  6. for(int i=m-;i>=;i--)
  7. {
  8. if(i-n>=)
  9. {
  10. a[i]=a[i-n];
  11. //a[i-n]=0;
  12. }
  13. else
  14. a[i]=;
  15. }
  16. }
  17. void main()
  18. {
  19. int a[max],bb[max],b[max][max],c[max],m,n,temp,i,j,k;
  20. scanf("%d%d",&m,&n);
  21. printf("提示:默认结果不超过500位,如果超过500位则出错!\n");
  22. printf("%d的%d次方:",m,n);
  23. for(i=;i<max;i++)
  24. {
  25. a[i]=;
  26. c[i]=;
  27. for(j=;j<max;j++)
  28. b[i][j]=;
  29. }
  30. if(m<)
  31. a[]=m;
  32. else
  33. {
  34. temp=m;
  35. j=;
  36. while(temp!=)
  37. {
  38. a[j]=temp%;
  39. temp=temp/;
  40. j++;
  41. }
  42. }
  43. //////
  44. //m=16;126
  45. while (n>)
  46. {
  47. for(i=;i<max;i++)
  48. for(j=;j<max;j++)
  49. b[i][j]=;
  50. for(i=;i<max;i++)
  51. bb[i]=a[i]*m;
  52. for(i=;i<max;i++)
  53. if(bb[i]<)
  54. b[i][]=bb[i];
  55. else
  56. {
  57. temp=bb[i];
  58. for(j=;j<max;j++)
  59. {
  60. b[i][j]=temp%;
  61. temp=temp/;
  62. }
  63. }
  64. for(i=;i<max;i++)
  65. {
  66. yiwei(b[i],i,max);
  67. }
  68. //右加
  69. for(i=;i<max;i++)
  70. {
  71. for(j=;j<max;j++)
  72. c[i]=c[i]+b[j][i];
  73. }
  74. //c移位
  75. for(i=;i<max;i++)
  76. {
  77. if(c[i]>=)
  78. {
  79. temp=c[i];
  80. j=i;
  81. while(temp!=)
  82. {
  83. if(j==i)
  84. c[j]=temp%;
  85. else
  86. c[j]=c[j]+temp%;
  87. j++;
  88. temp=temp/;
  89. }
  90. }
  91. }
  92. for(i=;i<max;i++)
  93. {
  94. a[i]=c[i];
  95. c[i]=;
  96. }
  97. n--;
  98. }
  99.  
  100. for(i=max-;i>=;i--)
  101. {
  102. if(a[i]!=)
  103. break;
  104. }
  105. for(;i>=;i--)
  106. printf("%d",a[i]);
  107. printf("\n");
  108. system("pause");
  109. }

本文出自 “阿凡达” 博客,请务必保留此出处http://shamrock.blog.51cto.com/2079212/702538

C语言计算任意数的任意次方的更多相关文章

  1. H5 可堆叠的圆环进度条,支持任意数量子进度条

    by Conmajia SN: S22-W1M 由来 看到一篇帖子<vue实用组件--圆环百分比进度条>,让我想起了很多年前我在WinForm下仿制过的Chrome进度条. ▲ 原版进度条 ...

  2. 【bzoj1485:】【 [HNOI2009]有趣的数列】模任意数的卡特兰数

    (上不了p站我要死了,侵权度娘背锅) Description 我们称一个长度为2n的数列是有趣的,当且仅当该数列满足以下三个条件: (1)它是从1到2n共2n个整数的一个排列{ai}: (2)所有的奇 ...

  3. C 语言实例 - 计算一个数的 n 次方

    C 语言实例 - 计算一个数的 n 次方 计算一个数的 n 次方,例如: ,其中 为基数, 为指数. 实例 - 使用 while #include <stdio.h> int main() ...

  4. js求1到任意数之间的所有质数

    何为质数: 只能被1 和 自身 整除的数; 方法: 利用js中求模, 看是否有余数. ---> 3%2 = 1; 5%2 = 3......... 代码如下: function test (n) ...

  5. [转帖]C语言计算时间函数 & 理解linux time命令的输出中“real”“user”“sys”的真正含义

    C语言计算时间函数 & 理解linux time命令的输出中“real”“user”“sys”的真正含义 https://blog.csdn.net/willyang519/article/d ...

  6. 统计C语言程序行数

    补充前一篇中统计C语言程序行数的程序 写得比较匆忙,可能有些失误,等弄明白GitHub的用法并完善程序后再补充完整代码链接 没有写成函数,但经过简单修改可以作为一个计算或判断函数使用 判断算法主要为以 ...

  7. hdu 5001 从任意点出发任意走d步不经过某点概率

    http://acm.hdu.edu.cn/showproblem.php?pid=5001 给定n个点m条边的无向图问从任意点出发任意走d步,从不经过某个点的概率 本想先算路过每个点的概率然后用1减 ...

  8. C语言计算两个日期间隔天数

    在网上看到了一个C语言计算日期间隔的方法,咋一看很高深,仔细看更高神,很巧妙. 先直接代码吧 #include <stdio.h> #include <stdlib.h> in ...

  9. 闰年计算——JavaScript 语言计算

    ㈠闰年是如何来的? 闰年(Leap Year)是为了弥补因人为历法规定造成的年度天数与地球实际公转周期的时间差而设立的.补上时间差的年份为闰年. ㈡什么是闰年? 凡阳历中有闰日(二月为二十九日)的年, ...

随机推荐

  1. 基于EventAggregator的事件发布及订阅

    EventAggregator简介 EventAggregator是Prism中专门处理ViewModel与ViewModel之间事件传递的类对象,它提供了针对事件的发布方法和订阅方法,所以可以非常方 ...

  2. [word]2010中插入公式自动编号并且公式不自动缩小/变小

    要实现在word2010中插入公式自动编号,就要用到自动图文集功能,具体操作如下: 1.先制定制表位位置:单击一个空白段落,然后双击标尺线的底部:这会激活"制表位"对话框,如图所示 ...

  3. 流程引擎Activiti系列:在eclipse中搭建咖啡兔的Activiti演示工程中的各种坑及其解决方法(kft-activiti-demo-no-maven)

    近期在学习activiti,打算基于现有的框架,比如activiti-explorer或者咖啡兔的示例工程 kft-activiti-demo,在此基础上添加自己的业务流程,看看是否可以走通,以及这个 ...

  4. (转)Python实例手册

    原文地址:http://hi.baidu.com/quanzhou722/item/cf4471f8e23d3149932af2a7 实在是太好的资料了,不得不转 python实例手册 #encodi ...

  5. Scala学习笔记(五):类和对象

    对象实例的变量组成了对象的内存映射 public是Scala的默认访问级别 Scala里方法参数的一个重要特征是它们都是val,不是var Scala不能定义静态成员 单例对象(singleton o ...

  6. 怎样写 OpenStack Neutron 的 Extension (三)

    通过上几章的介绍,我们现在的 myplugin 文件夹看上去应该是这样的: - neutron/ - plugins/ - myplugin/ - __init__.py - plugin.py - ...

  7. PHP 系列:PHP Web 开发基础

    PHP是动态类型的Web开发的脚本语言,PHP以页面文件作为加载和运行的单元,PHP现在有了Composer作为开发包管理. 1.使用Composer管理依赖 自从.NET开发用了Nuget管理程序集 ...

  8. JSON.NET 简单的使用

    JSON.NET(http://json.codeplex.com/)使用来将.NET中的对象转换为JSON字符串(序列化?),或者将JSON字符串转换为.NET中已有类型的对象(反序列化?) 首先为 ...

  9. oracle-5-的升级步骤

    升级数据库的步骤 1.决定升级到那个版本 2.确定最近的数据已经备份(非常的重要) 3.安装软件升级包 4.升级方式启动数据库 5.执行必要的脚本 6.升级后的检查

  10. asp.net 学习

    1.维护数据库的完整性.一致性.你喜欢用触发器还是自写业务逻辑?为什么? 答:尽可能用约束(包括CHECK.主键.唯一键.外键.非空字段)实现,这种方式的效率最好:其次用触发器,这种方式可以保证无论何 ...