![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C语言
「已注销」
这个作者很懒,什么都没留下…
展开
-
C语言二分查找算法
二分査找就是折半查找,其基本思想是:首先选取表中间位置的记录,将其关键字与给定关键字 key 进行比较,若相等,则査找成功;若 key 值比该关键字值大,则要找的元素一定在右子表中,则继续对右子表进行折半查找:若 key 值比该关键宇值小,则要找的元素一定在左子表中,继续对左子表进行折半査找。要求用户输入数组长度,也就是有序表的数据长度,并输入数组元素和査找的关键字。例如,在有序表 11、13、18、 28、39、56、69、89、98、122 中査找关键字为 89 的元素。原创 2023-06-09 19:46:40 · 180 阅读 · 0 评论 -
C语言归并排序算法
归并是将两个或多个存序记录序列合并成一个有序序列。归并方法有多种,一次对两个有序记录序列进行归并,称为路归并排序,也有三路归并排序及多路归并排序。用归并排序法对一组数据由小到大进行排序,数据分别为 695、458、362、789、12、 15、163、23、2、986。(2) 自定义函数 merge_sort(),实现归并排序。(1) 将 n 个记录看成是 n 个长度为 1 的有序子表。(1) 自定义函数 merge(),实现一次归并排序。(2) 将两两相邻时有序无表进行归并。原创 2023-06-09 19:35:47 · 72 阅读 · 0 评论 -
C语言选择排序
选择排序的基本算法是从待排序的区间中经过选择和交换后选出最小的数值存放到 a[0] 中,再从剩余的未排序区间中经过选择和交换后选出最小的数值存放到 a[1] 中,a[1] 中的数字仅大于 a[0],依此类推,即可实现。第一个 for 循环是确定位置的,该位置是存放每次从待排序数列中经选择和交换后所选出的最小数。第二个 for 循环是实现将确定位置上的数与后面待排序区间中的数进行比较的。选择排序法对一组数据由小到大进行排序,数据分别为 526、36、2、369、56、45、78、92、125、52。原创 2023-06-09 18:41:22 · 50 阅读 · 0 评论 -
C语言插入排序
插入排序是把一个记录插入到已排序的有序序列中,使整个序列在插入该记录后仍然有序。插入排序中较简单的种方法是直接插入排序,其插入位置的确定方法是将待插入的记录与有序区中的各记录自右向左依次比较其关键字值的大小。本实例要求使用直接插入排序法将数字由小到大进行排序。(1) 自定义一个函数,实现直接插入排序,在本实例中,我们自定义该函数为 insort()。原始顺序:25 12 36 45 2 9 39 27 98 37。(2) main() 函数为程序的入口函数。本实例算法过程如表 1 所示。原创 2023-06-06 19:48:09 · 48 阅读 · 0 评论 -
C语言写冒泡排序
本实例要求用冒泡法对 10 个数由小到大进行排序,冒泡法的基本思路是,如果要对 n 个数进行冒泡排序,那么要进行 n-1 趟比较,在第 1 趟比较中要进行 n-j 次两两比较,在第 j 趟比较中要进行 n-j 次两两比较。从这个基本思路中就会发现,趟数决定了两两比较的次数,这样就很容易将两个 for 循环联系起来了。(1) 通过两个 for 循环实现冒泡排序的全过程,外层 for 循环决定冒泡排序的趟数,内层 for 循环决定每趟所进行两两比较的次数。原创 2023-06-06 19:25:50 · 53 阅读 · 0 评论 -
C语言写希尔排序
希尔排序是在直接插入排序的基础上做的改进,也就是将寒排序的序列按固定增量分成若干组,等距者在同二组中,然后再在组内进行直接插入排序。这里面的固定增量从 n/2 开始,以后每次缩小到原来的一半。希尔排序法对一组数据由小到大进行排序,数据分别为 69、56、12、136、3、55、46、 99、88、25。(2) main() 函数作为程序的入口函数。(1)自定义函数 shsort(),实现希尔排序。原创 2023-06-06 19:22:40 · 126 阅读 · 1 评论 -
C语言算法渔夫晒网问题
若输入年份是平年,月份为 m 时就在前面累加日期的基础上继续累加存储着平年每月天数的数组的前 m-1 个元素,将累加结果加上输入的日期便求出了最终结果。首先判断 2011 年距输入的年份有多少年,这其中有多少年是闰年就将 sum 加多少个 366,有多少年是平年便将 sum 加上多少个 365。如果一个渔夫从 2011 年 1 月 1 日开始每三天打一次渔,两天晒一次网,编程实现当输入 2011 1 月 1 日以后的任意一天,输出该渔夫是在打渔还是在晒网。2011:1:4 晒网。原创 2023-06-04 15:02:21 · 46 阅读 · 0 评论 -
C语言程序猴子吃桃问题
猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将第一天剩下的桃子吃掉一半,有多吃了一个。到第 10 天早上想再吃时,发现只剩下一个桃子了。编写程序求猴子第一天摘了多少个桃子。本实例的思路基本上是先找出变量间的关系,也就是要明确第一天桃数和第二天桃子数之间的关系,即第二天桃子数加 1 的 2 倍等于第一天的桃子数。(1) 定义 day、x1、x2 为基本整型,并为 day 和 x2 赋初值 9 和 1。(2) 使用 while 语句由后向前推出第一天摘的桃子数。原创 2023-06-03 10:30:25 · 795 阅读 · 0 评论 -
百钱买百鸡问题,C语言
根据题意设公鸡、母鸡和雏鸡分别为 cock、hen 和 chick,如果 100 元全买公鸡,那么最多能买 20 只,所以 cock 的范围是大于等于 0 且小于等于 20;中国古代数学家张丘建在他的《算经》中提出了一个著名的“百钱买百鸡问题”,鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问翁、母、雏各几何?(1) 使用 for 语句对 3 种鸡的数嫌在事先确定好的范围内进行穷举并判断,对满足条件的 3 种鸡的数量按指定格式输出,否则进行下次循环。公鸡:0,母鸡:25,小鸡:75。原创 2023-06-03 10:26:43 · 105 阅读 · 0 评论 -
C语言算法,三个数从小到大输出
本实例使用 scanf("%d%d%d",&a,&b,&c);从键盘中获得任意 3 个数。(3) 使用 if 语句进行条件判断,如果 a 大于 b,则借助于中间变量 t 互换 a 与 b 值, 依此类推比较 a 与 c、b 与 c,最终结果即为 a、b、c 的升序排列。任意输入 3 个整数,编程实现对这 3 个整数由小到大进行排序。(1)定义数据类型,本实例中 a、b、c、t 均为基本整型。(2) 使用输入函数获得任意 3 个值赋给 a、b、c。(4) 使用输出函数将 a、b、c 的值依次输出。原创 2023-05-30 19:20:59 · 118 阅读 · 0 评论 -
C 语言实例 - 数值比较
【代码】C 语言实例 - 数值比较。原创 2023-05-28 15:55:38 · 157 阅读 · 0 评论 -
C 标准库 4- <float.h>
下面的值是特定实现的,且是通过 #define 指令来定义的,这些值都不得低于下边所给出的值。C 标准库的 float.h 头文件包含了一组与浮点值相关的依赖于平台的常量。b 指数表示的基数,2 表示二进制,10 表示十进制,16 表示十六进制,等等...这些宏定义了基数为 FLT_RADIX 时的指数的最小负整数值。这些宏定义了基数为 FLT_RADIX 时的指数的最大整数值。这些宏定义了基数为 10 时的指数的最小负整数值。这些宏定义了基数为 10 时的指数的最大整数值。这些宏定义了最小的浮点值。原创 2023-05-27 20:02:34 · 51 阅读 · 0 评论 -
C 标准库 3- <errno.h>
C 标准库的 errno.h 头文件定义了整数变量 errno,它是通过系统调用设置的,在错误事件中的某些库函数表明了什么发生了错误。在程序启动时,errno 设置为零,C 标准库中的特定函数修改它的值为一些非零值以表示某些类型的错误。这个宏表示一个范围错误,它在输入参数超出数学函数定义的范围时发生,errno 被设置为 ERANGE。这个宏表示一个域错误,它在输入参数超出数学函数定义的域时发生,errno 被设置为 EDOM。这是通过系统调用设置的宏,在错误事件中的某些库函数表明了什么发生了错误。原创 2023-05-27 16:13:49 · 108 阅读 · 0 评论 -
C 标准库 2- <ctype.h>
如果参数 c 不满足描述的条件,则这些函数返回零。完整的数字集合 { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }C 标准库的 ctype.h 头文件提供了一些函数,可用于测试和映射字符。字母数字字符、标点符号字符和空格字符的集合。该函数检查所传的字符是否是十六进制数字。该函数检查所传的字符是否是字母和数字。该函数检查所传的字符是否是十进制数字。该函数检查所传的字符是否有图形表示法。该函数检查所传的字符是否是控制字符。该函数检查所传的字符是否是小写字母。该函数检查所传的字符是否是可打印的。原创 2023-05-27 16:11:04 · 38 阅读 · 0 评论 -
assert.h,C语言标准库1
ASSERT() 是一个调试程序时经常使用的宏,在程序运行时它计算括号内的表达式,如果表达式为 FALSE (0), 程序将报告错误,并终止执行。这个宏通常原来判断程序中是否出现了明显非法的数据,如果出现了终止程序以免导致严重后果,同时也便于查找错误。已定义的宏 assert 指向另一个宏 NDEBUG,宏 NDEBUG 不是 <assert.h> 的一部分。C 标准库的 assert.h头文件提供了一个名为 assert 的宏,它可用于验证程序做出的假设,并在假设为假时输出诊断消息。原创 2023-05-27 15:53:19 · 88 阅读 · 0 评论 -
C 语言实例 - 两数相除
【代码】C 语言实例 - 两数相除。原创 2023-05-27 11:07:58 · 1057 阅读 · 0 评论 -
C语言转换as cll码
三:可显示字符:a-z、A-Z、0-9、~、!ASCII值 控制字符 ASCII值 控制字符 ASCII值 控制字符 ASCII值 控制字符。二:空白字符:空格(32)、 制表符、 垂直制表符、 换行、 回车。以上就是as cll值表,大家可以自行对照,点关注,下期更精彩。一:0-31、127(删除键)是控制字符。ASCII 定义了 128 个字符。原创 2023-05-25 20:17:02 · 596 阅读 · 0 评论 -
C 语言实例 - 两个浮点数相乘
好,我们一起来看这个程序,这个程序是两个浮点数相乘,首先我们命名三个变量,用douboe来命名,也就是first member和second number,还有一个就是鸡,首先用printf让用户输入两个浮点数,也就是小数,然后用scan f,来接收用户数的两个数,注意在接收的时候要用lf,因为这是浮点数,后面还需要跟着一个&接受完了以后,我们把鸡设定为等于first member×second number。输入两个浮点数: 1.2 2.345。C 语言实例 - 两个浮点数相乘。原创 2023-05-23 18:44:21 · 448 阅读 · 0 评论 -
C 语言实例 - 两个整数相加
好,我们一起来看一下这个程序,这个程序是C语言实例,两个整数,相加。使用 scanf() 来接收输入, printf() 与 %d 格式化输出整数。输入两个数(以空格分割): 1 2。原创 2023-05-22 20:28:09 · 759 阅读 · 0 评论 -
C 语言实例 - 输出双精度(double)数
使用 printf() 与 %e 输出双精度数。好,我们一起来看这个程序。d 的值为 1.200123e+01。原创 2023-05-22 20:23:38 · 2788 阅读 · 0 评论 -
C语言输出浮点数
好,我们一起来看这个程序,这个程序是C语言程序,先把函数头ST tio点h,给写完以后再把main函数,给写出来以后,我们再用float,这个是专门来输出浮点数的,只不过这个是单精度,然后我们命名一个变量ff=12点001234,然后我们再用printf进行输出,注意输出的时候百分号后面要加f,而不是dd表示的是整数,f表示的是浮点数,我们今后还会学到双精度,也就是double这期再见,关注我下期更精彩。原创 2023-05-22 20:03:46 · 1785 阅读 · 0 评论 -
C语言输出单个字符
【代码】C语言输出单个字符。原创 2023-05-21 11:14:34 · 1041 阅读 · 0 评论 -
C语言输出hello world
好,我们简单来看一下这个C语言的这个程序,首先我们要写一个C语言的文件头,也就是stdio.h,写完这个文件头以后,和C加加一样,我们也要用一个main函数,然后引用完这个函数以后,我们就可以进行输出,C语言跟C加加不同的是,C加加用的是cout,而C语言用的是praitf,用这个函数进行输出时,首先要一个括号,然后在这括号里,用一个引号,然后,写出自己想要输出的内容,就可以进行输出了,点个关注,下期更精彩。// printf() 中字符串需要引号。原创 2023-05-14 20:29:56 · 355 阅读 · 0 评论 -
C语言进行输入输出
这个程序呢,是一个C语言程序它的作用是让用户输入一个整数,然后再用Printf进行输出,表明用户输入的这个数虽然这个程序没啥用,但是却是帮我们了解cin的作用,我们一起来看这个程序,首先照例是文件头stdio.h,然后再是main的函数接着用printf让用户输入一个整数,对了,在用输出时,在他的前面,我们要先命名一个变量这个变量呢,是一个int类型也就是一个整形至于其他的浮点型,我们以后再讲。printf("你输入的整数是: %d", number);// printf() 显示格式化输入。原创 2023-05-14 20:41:51 · 62 阅读 · 0 评论