C语言
文章平均质量分 90
关于C语言的一些整理
搞前端的小菜
热爱前端的小菜,低代码方向的爱好者
展开
-
归并排序(C语言)详解
记录学习第五天今天记录一下归并排序,因为在csdn里面没有找到特别清楚的解析,所以想自己写的认真一点,也查阅了一些资料,通过这篇博客记录一下;归并排序,光看字面,归并,似乎是把两个合并到一起,也是由此我们也就先来说一下归并排序的基本原理。如果有两个已经排序好的数组{1,4,6,8},{2,7,9,12};我们要把这两个数组合并再排序;目标数组应该是{1,2,4,6,7,8,9,12}...原创 2020-05-04 10:30:32 · 40641 阅读 · 68 评论 -
动态链表的实现(C语言)
记录学习第四天今天复习一下动态链表的实现C语言实现链表一定会有着结构体和结构体指针;那什么是动态链表;打个比方,如果我想做一个学生成绩管理系统,但我不确定学生的人数,学生的信息可以用一个结构体来表示,由于不确定人数,我们如果用结构体数组,那数组的大小一定要够大,才能不出现数组元素不够用的情况,但是,剩下的结构体占着内存又是一种浪费,所以,就有了链表;链表就是,我要记录一个学生的信息...原创 2020-05-03 20:31:06 · 4126 阅读 · 12 评论 -
最大子序列之和(C语言)
第三天记录本来今天是想学一下堆排序,虽然明白了算法的大概流程,可是代码自己写不出来,如果哪天我回来看看,记得把堆排序给补上。所以今天记录一下以前学的的一个算法,计算最大子序列的算法;也算是复习一下;先来说一下什么是最大子序列;打个比方如果有一个序列是1,-5, 6 , 2, 3;那么它的最大子序列之和为6+2+3=11;可以看出规律的吧;就是连续的子集!加起来!最大!...原创 2020-05-02 11:08:18 · 1399 阅读 · 0 评论 -
希尔排序(C语言)
记录学习的第二天,今天看了第二个排序,希尔排序;希尔排序嘛,应该就是建立在插入排序基础上的一个优化(应该是这样);有点对半查找的那种感jiao;首先必须先附上纯手工的笔记!看着还是有点乱啊,希望以后咱不会了回来能看懂先解释一下这个增量序列,用到希尔排序的话,首先要确定的就是它,那怎么确定呢,恩,如上图!默认情况应该是:如果序列中有10个元素,就用10/2=5;第一个就是5;...原创 2020-05-01 10:53:41 · 334 阅读 · 0 评论 -
插入排序(C语言)
作为一个超级小白,必须要有记录学习的好习惯,由于目前只掌握了一点C,所以记录一下自己的学习情况!!!!!(主要是怕忘了能回来看看)emmmmm插入排序的特点嘛一定就是已经按照自己想法基本排序好的,排序运行贼快要是是个倒序排列的你想给倒过来,应该是最差的情况.ojbk,正文开始为了说的具体(为了让我能只看懂),就拿一个最坏的情况的例子10,6,3,1;要把这个数组变成我所希望的...原创 2020-04-30 11:18:50 · 293 阅读 · 0 评论 -
简单的 递归方法和循环方法的比较(C语言)
本来今天做了一天的实验,但为了自己的连续每天都写所以,记录学习的第15天今天在blink看到的一道基础题正好也是为了给这位同学和刚学习C语言的同学说一下,所以写了今天的博客这很基础很基础,所以只是对初学者有一些帮助看题一看到这道题,我们脑海中会出现两种解决办法,一种是递归,一种是循环1、我们先来说下循环的解决办法我会写出两种循环(for循环和while循环)虽然这个表达式很长,但你会发现,其实他每次求得只都是下面那一句1+1/x;只不过求完一次就把x的值更新为1+1/x;然原创 2020-05-13 21:37:47 · 1725 阅读 · 1 评论 -
欧几里得算法(C语言)
三行代码求出最大公约数原创 2020-05-12 11:10:13 · 3003 阅读 · 0 评论 -
C语言链表的删除操作
C语言中链表的删除节点操作,超简单;懂了之后修改和查找更不在话下原创 2020-05-11 11:02:29 · 4821 阅读 · 5 评论 -
C语言,被你误对待的运算符优先级
记录学习的第十二天今天看书的时候,发现了曾经自己犯过错,改正后还不懂得bug;竟然懂了;所及今天分享一下C语言运算符中比较常见的错误引起的可爱bug (≧▽≦);1.这个bug是我自己写实验遇到过的,码来; char ch; while(ch=getchar()!='\0'){ putchar(ch); }emmm,很简单的代码吧,似乎意思也很简单;如果我输入12345;结果却错的离谱!12345他给我输出一堆格格;最后的解决办法,也是很简单,加个括号原创 2020-05-10 10:11:12 · 208 阅读 · 0 评论 -
unsigned类型引起的bug你能发现吗
```cint a[10];unsigned int x=sizeof(a);int y=-1;if(x>y){ printf("%d",x);}else{ printf("%d",y);}```很简单的一串代码;恩...输出会是神马呢?原创 2020-05-09 09:15:48 · 316 阅读 · 0 评论 -
C语言中的time.h下的函数总结
记录学习的第10天今天记录一下C语言中的time.h头文件下的各种函数总结go go go!1、计时函数C语言中的计时函数为clock(),相关的数据类型为clock_t;很多时候,我们需要做一个计时器;那么实现出一个计时器,就需要用到这个函数;具体怎么用呢?我们用代码来实现一下;我用clock函数来计算一个函数所花费的时间;long i=10000000L;clock_...原创 2020-05-08 11:37:29 · 7962 阅读 · 6 评论 -
C语言字符串处理函数小结
记录学习的第九天今天,复习一下C语言的字符串处理函数首先呢,我们在C中定义的字符串一般都以字符数组来表示;所以赋值语句和比较语句对字符串就派不上用场了;比如你不能a[10]=b[10]这样写;所以就要有C字符串处理函数来对字符串进行操作;1、字符串连接函数;strcat(str1,str2)char a[]="abc";char b[]="def";strcat(a,b);...原创 2020-05-07 11:05:38 · 300 阅读 · 0 评论 -
C语言你不知道的事(2)
记录学习的第七天今天还是分享一下C语言的一些比较愉快的知识点1.switch语句中break的重要性;首先呢我们看一下代码:int x;scanf("%d",&x);switch(x){case 0:printf("red\n");break;case 1:printf("white\n");break;case 2:printf("blue\n");break;d...原创 2020-05-06 18:58:37 · 166 阅读 · 0 评论 -
C语言你不知道的事(1)
依旧是第6天,今天分享两个比较有趣的C语言知识点;1,C语言中空格到底有没有用;那我们来分享两端代码;来请看:int y=x/*p;int y=x/ *p;这两段代码的差别只是差了一个空格;但是却是两种解释。先看第一个,这个代码的意思是什么呢,/* 把p和p后面的都给注释掉了;再看第二个,用x除*p,得到的值再赋值给y;可以看到,只是差了一个空格,意思却大相径庭;在...原创 2020-05-05 17:58:08 · 219 阅读 · 0 评论 -
你真知道sqrt(4)是多少吗
记录学习的第五天今天在blink里面看到了个好玩的。直接看代码:int x=4;printf("%d",sqrt(x));是不是很简单,但是代码运行后结果可不是2;而是0!这是怎么回事呢,我们知道,sqrt这个函数返回值是double类型,把一个double类型的值以%d形式输出,C语言是识别不了的,所以它的输出是0;那我们改一下代码试试!int x=4;printf("%...原创 2020-05-05 09:33:13 · 5603 阅读 · 1 评论
分享