- 博客(8)
- 收藏
- 关注
原创 插入排序详解
插入排序有两种:直接插入排序和希尔排序。希尔排序是在直接插入排序的基础上实现的,所以希尔排序某种意义上来说是直接插入排序的优化版。
2024-03-02 23:59:30
628
14
原创 C语言练习题(易错)-----算术转换
当整形和无符号整型作比较时,会被算术转换为无符号整型,即整型的-1被转换成无符号整型(算术转换的定义及顺序,请看文章末尾)。将它转换成无符号数,是一个非常大的数,所以i的值远远大于sizeof(i)(4)。如果某个操作符的各个操作数属于不同类型,那么除非其中一个操作数转换为另一个操作数类型,否则就无法进行后续操作,下面的层次体系成为寻常算数转换。注意:无初始化的前提下,局部变量编译器默认初始化为随机值,全局变量默认初始化为0)其次,i是一个整型,而sizeof的返回值为。上述代码的运行结果是什么?
2023-09-23 10:45:56
254
15
原创 字符串库函数---常见字符串函数的模拟实现
strlen函数的作用是求字符串的长度,即\0之前字符的个数。strlen的函数原型为:(更多函数细节 请关注网址。
2023-09-17 23:42:24
256
10
原创 递归方式实现打印一个整数的每一位
将1234%10,即可得到4,得到4之后,可以将1234/10,得到123。用递归的方法实现:我们发现,在这个数中我们先比较好拿出来的是4。123%10又可以得到3,123/10可以得到12。12%10得到2,12/10得到1......输出打印1 2 3 4。
2023-09-15 17:41:07
601
3
原创 字符串逆序(递归实现)
库函数strlen的实现,由于本题明确表明不能使用库函数,但是在这两个方法中均用了strlen函数,我们可以自己实现一个my_strlen函数,代替strlen库函数。这是一个实现字符串逆序的函数。我们可以有两种方式:递归和非递归的方式。接下来,使用递归的方法来完成这道题目。:将参数字符串中的字符反向排列,不是逆序打印。不能使用C函数库中的字符串操作函数。首先,我们先来看一下。
2023-09-14 21:43:11
736
2
原创 C语言--三子棋
这里,若某一行(第一个if语句),某一列(第二个if语句),对角线(主对角线,副对角线)(第三个和第四个if语句),还有一个判断平局的函数。在程序编写的过程中,为了保证游戏的安全性机,我们通常将主函数和game函数放在一个.c文件里面,将game函数里调用的所有函数放在另一个.c文件里面。game函数的作用就是完成整个游戏,首先三子棋我们需要在一个棋盘上面游戏,在这里我们采用二维数组的方式,制作一个棋盘,并且初始化它。在这里,我们的主要函数已经均准备就绪,让我们一起来看一下,game函数的设计吧!
2023-09-05 23:17:07
95
1
原创 C语言---冒泡排序
例如(这里用从小到大举例):在其中一轮中,先将第一个元素和第二个元素进行比较,若第一个元素小于第二个元素,则继续往后遍历,不做调整。如果第一个元素大于第二个元素,则交换第一个元素和第二个元素的位置。调整完了之后,继续向后走,比较第二个元素和第三元素......就这样一直比较,在一轮结束后,最终会将整个数组中的最大的一个元素调整至数组最末端.....这样几轮后,就实现了由小到大的排序了。在我们的学习中,了解到的排序有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等等。
2023-09-05 19:02:04
302
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人