C语言练习
文章平均质量分 67
embrace99
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【C语言练习】汉诺塔
汉诺塔问题是一个经典的递归问题,源于印度传说。游戏规则要求将n个圆盘从起始柱A移动到目标柱C,每次只能移动一个圆盘且小圆盘不能放在大圆盘上。通过分析发现,n个圆盘的移动次数为2^n-1次。解决方案采用递归思想:先将上面n-1个圆盘通过C柱移到B柱,再将最大的圆盘直接移到C柱,最后将B柱上的n-1个圆盘通过A柱移到C柱。代码实现分为移动轨迹和移动次数两种形式,通过递归函数Hanoi()实现。该问题展现了递归算法的精妙,是理解递归思想的经典案例。原创 2025-08-26 23:28:30 · 332 阅读 · 0 评论 -
【C语言练习】青蛙跳台阶
摘要: 青蛙跳台阶问题是一个经典的递归问题。当青蛙每次可以跳1或2个台阶时,n个台阶的跳法数f(n)等于f(n-1)和f(n-2)之和,形成斐波那契数列。例如: n=1时1种跳法 n=2时2种跳法 n=3时3种跳法 通过递归实现:当n≤2时返回n,否则返回Jump(n-1)+Jump(n-2)。这个解法直观展示了递归在分步问题中的应用。原创 2025-08-24 22:29:09 · 245 阅读 · 0 评论 -
【C语言练习】100-200之间的素数(详解)
在解题之前,我们需要先了解什么是素数,可能不少小伙伴已经忘记甚至压根儿不清楚素数的概念。没关系,那么就让我来向大家简单介绍一下。素数也被称为质数,是大于1的自然数,除了1和它自身外,不能被其他自然数整除。例如,13、17、29等都属于素数。而我们需要做的就是去编写一个程序,让它帮助我们来找到100-200之间所有这样的数。原创 2023-07-30 19:14:27 · 2222 阅读 · 0 评论 -
【C语言练习】最大公约数求法(三种方法)
给定两个数,求这两个数的最大公约数。比如:20 40两个数的最大公约数为20。原创 2023-07-28 00:03:27 · 5529 阅读 · 1 评论 -
【C语言练习】交换两个数a和b值
引入一个中间变量c作为交换时的临时存储,相信这也是大多数人的第一想法。这种方法易于大多数人理解和接受,但是这种方法会使数据出现溢出。原创 2023-07-02 22:35:00 · 996 阅读 · 1 评论 -
【C语言练习】判断闰年
写一个程序,用于判断输入年份是否为闰年。原创 2023-07-18 22:37:14 · 334 阅读 · 1 评论 -
【C语言练习】计算n的阶乘
计算n!主要有两种方法,首先通过for循环实现,另一种就是通过递归的方法实现。for循环实现起非常简单,下面重点讲解如何利用递归法实现。n!可以看作是n*(n-1)* (n-2)*…*1。把n!写成函数形式,即f(n),求n!的过程可以写成如下形式:f(1)=1;从上述过程可以看出,求f(n) 就需要调用f(n-1),求f(n-1) 就需要调用f(n-2)…它们都会调用同一个函数f,只是参数不同而已,即函数自己调用自己,这便称为递归。以n=5为例,其递归过程如下图所示。原创 2023-07-17 21:18:31 · 1032 阅读 · 1 评论 -
【C语言练习】编写代码,演示多个字符从两端移动,向中间汇聚
利用C语言编写一个程序,实现多个字符从两端从中间汇聚。原创 2023-07-17 17:20:42 · 163 阅读 · 1 评论 -
【C语言练习】猜数字游戏
系统随机生成0-100的整数,让玩家来猜。玩家猜数字后,系统给予玩家回馈并且统计玩家猜的次数,直到玩家猜对为止。原创 2023-07-15 11:16:45 · 206 阅读 · 1 评论
分享