求X的N次方x^n(幂)递归和非递归和pow C语言初学
目录
1、递归实现
程序完整代码
程序运行结果
2、非递归实现
程序完整代码
3、认识pow()函数
代码
1、递归实现
实现以下函数:计算并返回x^n的值
double factorial (double x, int n)
程序完整代码
#include<stdio.h>
//double(double x, int n) // 计算并返回x^n的值
double factorial(double x, double n)
{if (n == 0)return 1.0;else return (x* factorial(x, n-1));
}
int main()
{double x = 1;int n = 1;scanf("%lf %d", &x, &n);if (n < 0)printf("%lf^%d=%lf\n",x,n, 1 / factorial(x, -n));elseprintf("%lf^%d=%lf\n",x,n, factorial(x, n));return 0;
}
程序运行结果
2、非递归实现
程序完整代码
#include<stdio.h>
int main()
{int x, n;scanf("%d%d", &x, &n);double sum = 1;for (int i = 0; i < n; i++){sum *= x;}printf("%lf\n", sum);return 0;
}
3、认识pow()函数
头文件:#include <math.h>
pow() 函数用来求 x 的 y 次幂(次方),x、y及函数值都是double型
其原型为:double pow(double x, double y);
pow(x,y):用来计算以x 为底的 y 次方值,然后将结果返回。
代码
#include<stdio.h>
#include<math.h>
int main()
{int x, n;scanf("%d%d", &x, &n);double sum = pow(x, n);printf("%lf\n", sum);return 0;
}
求X的N次方x^n(幂)递归和非递归和pow C语言初学相关推荐
- c语言中fact函数怎么调用,C语言程序题: 1、编写一个求n!的函数fact(n),要求fact函数分别用递归和非递归两种方法实现...
点击查看C语言程序题: 1.编写一个求n!的函数fact(n),要求fact函数分别用递归和非递归两种方法实现具体信息 答:int fac(int n) //非递归{int f=1; for(;n;) ...
- 分别采用递归和非递归方式编写两个函数,求一棵二叉树中叶子节点个数
分别采用递归和非递归方式编写两个函数,求一棵二叉树中叶子节点个数 #include #include #define MAXSIZE 50 typedef char datatype; typedef ...
- 【算法】求n的m次方(快速幂取模)
题目 求n的m次方,n,m均为自然数. 解析 看似简单的题目,但是要想写的高效还不是那么容易想出来. 实现 unsigned int power(unsigned int a, unsigned in ...
- 二叉树的创建、遍历(递归和非递归实现)、交换左右子数、求高度(c++实现)
要求:以左右孩子表示法实现链式方式存储的二叉树(lson-rson),以菜单方式设计并完成功能任务:建立并存储树.输出前序遍历结果.输出中序遍历结果.输出后序遍历结果.交换左右子树.统计高度,其中对于 ...
- 用递归和非递归求斐波那契数列
递归的方法 #include<stdio.h> #include<stdlib.h> 递归的方式计算斐波那契数 int FeiBo(int f) {int n = 0;if ( ...
- 求斐波那契数(递归,非递归)
目录 一.斐波那契数? 二.递归实现求第n个斐波那契数 2.1代码与运行结果 2.1.1图解递归过程 三.非递归求法 3.1为什么不用递归求法 3.2非递归 一.斐波那契数? 它指的是这样的数列:1, ...
- C语言pow()函数:求x的y次方(次幂)
1.头文件:#include 2.原型: double pow(double x, double y); pow() 函数用来求 x 的 y 次幂(次方) pow()用来计算以 ...
- MATLAB求矩阵的100次方,Matlab矩阵幂运算
Matlab帮助文档 help mpower ^ Matrix power. Z = X^y is X to the y power if y is a scalar and X is square. ...
- 数据结构(3) 第三天 栈的应用:就近匹配/中缀表达式转后缀表达式 、树/二叉树的概念、二叉树的递归与非递归遍历(DLR LDR LRD)、递归求叶子节点数目/二叉树高度/二叉树拷贝和释放...
01 上节课回顾 受限的线性表 栈和队列的链式存储其实就是链表 但是不能任意操作 所以叫受限的线性表 02 栈的应用_就近匹配 案例1就近匹配: #include <stdio.h> in ...
最新文章
- 浅谈先验分布和后验分布
- CSS 行内格式化上下文中的各种高度计算
- 累积计税法:算一算您一年缴了多少个税
- mysql如何导出sql文件_MYSQL导入导出.sql文件
- Tracking Attackers: Honeypot, Part 1 (Honeyd)
- 大学计算机实践教程在线阅读,计算机基础实践教程.pdf
- 声音鉴卡引流神器网站源码
- h3c 云服务器操作系统,产品技术-H3C CloudOS云操作系统电信版-新华三集团-H3C
- python mac 启动台 图标 跳跃_详解macOS的Mac电脑上使用“启动台”(Launchpad)
- 什么是SaaS,PaaS和IaaS? 有例子
- Java岗大厂面试百日冲刺【Day46】— Linux2 (日积月累,每日三题)
- ABP实战--集成Ladp/AD认证
- IPad Pro 12.9英寸版本的界面适配
- 小白的测试人生(三)小白如何进入IT行业及如何选择培训机构
- matlab主成分分析散点图_主成分分析(PCA)及其在MATLAB中的实现
- C语言内功修炼之函数栈帧的创建与销毁(举例加图解)
- 安装和配置PhysX
- Easypoi的简单教程
- C/C++编译器错误代码大全
- Metal 框架之渲染到多个纹理切片