自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 N进制转10进制

生活中十进制最大数用9表示,如果是16进制,10,11……2.如果进制大于等于十进制,那么我们可以将得到的字符减去‘A’在加上10,这样字符就换算成我们想要的答案了。2进制数:1001 = 1 * 2^0 + 0 * 2^1 + 0 * 2^2 + 1 * 2^3;另外,我们需要编写一个strup()函数,将所有小写字母全部转化成大写字母。无论一个数是几进制,原理都一样——每一位的权重是N的n - 1次方.1.如果进制小于等于十进制,那么我们可以将得到的字符减去字符零。明白了这个原理,问题就基本解决了。

2024-07-24 15:50:53 283

原创 汉诺塔精解

很多人都认为完成第一个步骤之后我们就已经把 src 上的 n-1 个盘子移动到了 mid 上,接着第二个步骤的函数将最后一个盘子移动到 des 上,第三个步骤就把 n-1 个盘子移动到 des 上。那么我们是不是可以这样想:要从 src 上移动 n 个盘子到 des 上,是不是相当于从 src 上移动 n-1 个盘子到 mid 上,再把 src 上剩下的一个盘子移动到 des 上,最后把 mid 上的 n-1 个盘子移动到 des 上。我们的目的是把 src 上的 n 个盘子都移动到 des 上。

2024-07-09 00:43:48 937

原创 pta之考试座位号-点睛

但是这个首元素地址并不是arr[0][0]的地址,而是arr[0]的地址。你也许会问,arr[0]的地址和arr[0][0]的地址不是一样吗,有什么区别呢?我们可以把二维数组看作一维数组,以上面那个数组为例:arr[2][3]可以看作是arr[2]的数组,arr[2]里面有2个元素,每个元素都是一个有3个int类型元素的数组。即arr[i][j] = {数组,数组,数组……区别在于arr+1和arr[0][0]+1,arr[0][0] + 1会跳过4个字节,而arr+1会跳过3×4=12个字节。

2024-07-06 10:27:47 905

原创 辗转相除法原理

这样执行,但是我们知道17,16这些显然不会是最大公因数,至少我们知道从18开始,下一个判断18/2=9,再下一个判断18/3,因为这样的话首先就满足了这个因素能够整除18,只需要再满足另一个整除24的条件即可。只有了解到一个事物实现的底层原理,我们才能以不变应万变,达到四两拨千斤的效果。直到 c 为0时,那么这时候 b 值就是我们要求的最大公因数的值。对于前者,祝贺你的更进一步,对于后者,祝贺你早早就看透这些原理。知其然知其所以然,那现在我们来思考一下,为什么辗转相除法可以得到最大公因数呢?

2024-07-01 09:59:44 489

原创 递归与迭代——解斐波那契数列——C语言

斐波那契数列。

2024-06-27 23:14:56 602

原创 C语言解pta——打印沙漏

通过数学的数列知识,可以得到 x 行沙漏得到字符总数的公式为:Sn = (x + 1)² / 2 - 1. 在这里我们使用了一个循环,只要计算后的总数小于等于我们输入的数num,那么我们就从最小值1每次加2,直到 row 行沙漏数大于num. 我们可以发现,无论是 row 行计算后的数量是小于num还是等于 num, 退出循环后得到的 row 值都是比真正的 row 值大2. 所以接下来代码 row -= 2 还原 n 值。这道题的思路就是要计算出最大的沙漏形状,每一行先输出空格,接着输出字符。

2024-06-18 19:18:22 805

原创 pta-C语言解L1-003个位数统计

这样接下来的 arr[N] 就是我们输入的数字(字符),我们输入1,N就为1,(而不是48)。给定一个 k 位整数 N=dk−1​10k−1+⋯+d1​101+d0​ (0≤di​≤9, i=0,⋯,k−1, dk−1​>0),请编写程序统计每种不同的个位数字出现的次数。我们定义的 N 变量就代表我们输入的各个数字,这一串数字会在一个循环里每个数字依次赋值给 N,这样方便我们进行操作计数。这个问题的思路是:首先输入一串数字,首次遇到一个新字符或每次遇到相同的数字就+1,然后统计各个数字,最后将它们输出。

2024-06-17 18:57:40 906

原创 C语言入门分析

学习C语言的不二法门,万事讲究方法

2024-06-07 20:19:45 566 2

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除