- 博客(15)
- 收藏
- 关注
原创 C语言&冒泡排序的具体实现
冒泡排序的实现通常会对已经排序好的数列拙劣地执行(O(n^2)),而插入排序在这个例子只需要 O(n)个运算。冒泡排序如果能在内部循环第一次执行时,使用一个旗标来表示有无需要交换的可能,也可以把最优情况下的复杂度降低到O(n)。它重复地走访过要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。尽管这个算法是最简单了解和实现的排序算法之一,但它对于包含大量的元素的数列排序是很没有效率的。
2022-11-07 19:58:14 423
原创 C语言趣味小游戏——扫雷(详解版)
全篇无任何废话,本文的解释大多数都在代码段中,所以一定要看代码,边看边学边理解。这只是初学者入门的一个小游戏,不难懂,没有什么复杂的内容可以先学习一下比扫雷还简单的猜数字和三子棋C语言趣味小游戏——猜数字C语言趣味小游戏——三子棋1:do while 结构方便玩完一盘继续,也方便打印简易的菜单**2:实现游戏,用了两个雷盘 , 并且用char数组来存储游戏的数据 **
2022-09-03 18:09:07 13291 3
原创 C语言趣味小游戏——三子棋
游戏的条件1.根据坐标和电脑下棋,玩家一步棋,电脑一步棋,且不能悔棋2.玩完一盘可以继续可以学到的内容1.打印一个简单的菜单2.一些细节的用户体验3.自定义函数 , 时间戳的运用 , #define定义4.程序语言的一些入门逻辑5.C语言的知识...
2022-08-31 20:41:39 1698
原创 C语言趣味小游戏——三子棋的实现过程详解
游戏的条件1.根据坐标和电脑下棋,玩家一步棋,电脑一步棋,且不能悔棋2.玩完一盘可以继续可以学到的内容1.打印一个简单的菜单2.一些细节的用户体验3.自定义函数 , 时间戳的运用 , #define定义4.程序语言的一些入门逻辑5.C语言的知识...
2022-08-31 20:41:16 2074 1
原创 C语言入门递归算法——汉诺塔(简单易懂,最后还有汉诺塔游戏)
汉诺塔:(又称河内塔)问题是源于印度一个古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘...
2022-08-29 21:29:33 6606 1
原创 C语言趣味小游戏--猜数字(第二次,比第一次更详细,更易懂)
可以学到的内容:1:初步认识时间戳的运用2:初步认识循环怎样嵌套3:初步理解do while循环4:锻炼写代码的逻辑能力5:初识(rand)函数(srand)函数(time)函数6:认识一个简单的游戏框架是怎样实现的............
2022-08-15 12:02:16 1581
原创 C语言趣味小游戏——猜数字(1到100之间)
可以学到的内容:1:初步认识时间戳的运用2:初步认识循环怎样嵌套3:初步理解do while循环3:锻炼写代码的逻辑能力4:部分函数
2022-08-11 23:04:11 5892
原创 求n的阶乘,以及在有序数组中折半查找一个数
并且0的阶乘为1。自然数n的阶乘写作n!1808年,基斯顿·卡曼引进这个表示法。b永远比a小,例如a是2,b就是1。c不能为0,0乘任何数都得0。b=1,b小于a,为真,执行下一步,c=1×1,然后b++,b=2,b小于a,为真,执行下一步,c=1×2,然后b++,b=3,b等于a,为真,执行下一步,c=2×3,然后b++,=1×2×3×...×(n-1)×n。首先定义一个有序的数组,再定义需要查找的数。演示多个字符从两端移动,向中间汇聚。b=4,b大于a,为假,结束。)是所有小于及等于该数的。...
2022-08-10 15:11:39 145
原创 学习C语言的第二关 :分支,循环语句和跳转语句等...
如果表达式为真(严谨的说是非0),执行语句项,然后再次判断表达式,在语句项为假(0)之前,循环的判断和执行一直重复进行,每次循环都被成为迭代。当自行定义表达式的时候,只要遇到break,就停止后期的所有的循环,直接终止循环。1.关键字——if,else,while,do while,continue,break,case,default,goto;当a等于5的时候,continue语句会跳过下面的语句,并开始下一轮,然而下一轮的开始a还是5,所以会一直死循环。2.1.if,else语句的三分支。...
2022-08-10 12:29:27 286
原创 How we learn C++ ? (3)——函数重载
注意 : NO.1和NO.2两个不算重载,因为构成重载的条件是参数的类型不同或者个数不同,以上均不满足。总结:1.char和int都是表示整形的,整形一般都是用来表示大小,只不过int是4byte,char是1byte。2.char的1byte是用来表示ASCII码值的字母,多个字母可以表示英文,就能表示文字了。实际上调用的是 1:int类型的 2:double类型的 3:long类型的。感觉是调用的是一个函数,但其实不止一个,因为这个函数被重载了,所以有三层定义。这是一个非常重要的点。...
2022-08-09 22:16:36 304
原创 How do we learn C++ ? (2)
命名空间是一个 ‘域’ 和C语言的作用域的域差不多,可以把一些变量或者函数包含在里面,主要用来解决C语言的一些命名缺陷(冲突)问题。因为就近原则,使用scanf的时候,不会去全局找,再因为局部优先的原因,会先到局部找,这个问题C解决不了。C++为了防止命名冲突,把自身库里面的东西都定义在一个名为std(标准库)的空间中。直接展开std,整个文件都可用,但是会使自己定义的和库定义的冲突了,变得和C一样了。3.3.对部分常用的展开,一种1和2折中的方案,也会经常用。...
2022-08-09 18:45:38 228
原创 关于C语言的思维导图,不看仿佛错过一个亿(持续更新ing)
最通俗易懂,最简单,最好理解的C语言思维导图,不看仿佛错过一个亿,持续更新ing
2022-08-05 21:37:02 4570 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人