C语言之路
文章平均质量分 57
西科陈冠希
此人不懒,什么都写
展开
-
【C语言初阶】扫雷小游戏(C语言简易版)
扫雷RAP如果你想玩扫雷,(七句句末押韵)雷将会与你跟随。无雷格将被包围,营造紧张的氛围,只有C 语言相陪,将你的失败挽回。while循环将重回,直至你下次突围。扫雷规则以及条件在一个9*9或自定义大小的方块矩阵中随机布置一定量的地雷初级为10个。由玩家逐个翻开方块,以找出所有地雷为最终游戏目标。如果玩家翻开的方块有地雷,则游戏结束。扫雷背景扫雷最原始的版本可以追溯到1973年一款名为“方块”的游戏。 1981年,微软公司的罗伯特·杜尔和卡特·约翰逊两位工程师在Windows3.1原创 2020-09-09 19:06:20 · 778 阅读 · 1 评论 -
【C++初阶】C++入门
C++入门C++关键字命名空间C++输入&输出缺省参数和函数重载为什么C语言不能重载(原理)C++关键字1、asm_asm是一个语句的分隔符。不能单独出现,必须接汇编指令。一组被大括号包含的指令或一对空括号。例:_asm{mov al,2mov dx,0xD007out al,dx}也可以在每个汇编指令前加_asm_asm mov al,2_asm mov dx,0xD007_asm out al,dx2、autoauto关键字会根据初始值自动推断变量的数据类型原创 2021-01-31 17:34:32 · 383 阅读 · 0 评论 -
(C语言)Linux贪吃蛇游戏项目
Linux贪吃蛇游戏项目(C语言)原创 2021-01-07 12:29:56 · 515 阅读 · 0 评论 -
【数据结构初阶】证明链表带环问题
链表带环问题题目解析描述如何证明LEETCODE题目解析描述1.当我们要研究环的问题时首先要判断的就是这个链表是否有环?2.那么如何判断是否有环?这就从题目开始入轨题目:说明:当我们做过这类题目我们要想到的就是快慢指针的方法进行判断。快指针走两步,慢指针走一步。当快指针指向NULL或者快指针的下一个为空。慢指针也就指向了链表的中间元素,这里之前的顺序表查找中间元素也提及过。如何证明当我们知道使用快慢指针解决时,那么快慢指针是怎么实现,为什么不能是慢指针走一步快指针走三步?走四步或者原创 2020-12-25 15:07:56 · 180 阅读 · 0 评论 -
【LINUX】预处理->编译->汇编->链接(gcc实现)
编译一个C程序代码下面以Linux环境下的test.c为例,test.c里的代码为:#include <stdio.h>int main(int argc, char const *argv[]){ printf("hello bite\n"); return 0;}编译输出:原创 2020-12-23 08:11:09 · 190 阅读 · 0 评论 -
【LeetCode经典题目】数组形式的整数加法
数组形式的整数加法题目分析算法思考(`原先数组为A ASize 加入数K`)代码精讲题目分析对于非负整数 X 而言,X 的数组形式是每位数字按从左到右的顺序形成的数组。例如,如果 X = 1231,那么其数组形式为[1,2,3,1]。给定非负整数 X 的数组形式 A,返回整数 X+K 的数组形式。示例:输入:A = [1,2,0,0],K = 34 输出:[1,2,3,4]解释:1200 + 34 = 1234画图可知:将加入的整数放入数组当中,也有特殊的情况那就是进位和越界原创 2020-12-09 08:37:19 · 155 阅读 · 0 评论 -
【数据结构初阶】时间复杂度和空间复杂度 斐波那契数列( Fibonacci)
时间复杂度和空间复杂度时间复杂度和空间复杂度定义大O的渐进表示法举例详解斐波那契数列( Fibonacci)时间复杂度和空间复杂度定义首先要理解的就是在我们生活中基本上所有的东西都可以用时间或者空间来表示。编程也是一样如何去评判程序的好坏和效率的高低呢?当我们不能保证设备一样的情况下也就是建立在公平之上判断时,我们就引入了时间复杂度和空间复杂度这两个评判标准。时间复杂度定义:时间复杂度的定义:在计算机科学中,算法的时间复杂度是一个函数,它定量描述了该算法的运行时间。一个算法执行所耗费的时间,从理论原创 2020-12-04 15:54:07 · 656 阅读 · 0 评论 -
【C语言问题】程序为什么出现not all control paths return a value
关键词: not all control paths return a value谷歌翻译:并非所有控制路径都返回值大意就是没有给所有路径都设置返回值错误截图如下:举例代码:int max3(int x, int y, int z){ if (x < z && y < z) { return z; } if (x < y && z < y) { return y;原创 2020-11-30 12:14:32 · 4382 阅读 · 1 评论 -
【C语言进阶】数据在内存中的存储(大小端判定)
数据中内存的中的存储数据类型介绍对于类型的归类构造类型空类型存储形式原码反码补码大端:小端数据类型介绍分为内置类型和自定类型(构造类型-创建类型)数据在内从中存储是2进制的形式存储因为VS2013编译器为了方便在内存中是以16进制进行显示的。对数据类型的介绍(内置类型)char 字符数据类型short 短整型int 整形long 长整型long longfloat 单精度浮点数double 双精度浮点数对于类型的归类整形 char unsigned charsigned原创 2020-09-26 16:15:07 · 351 阅读 · 0 评论 -
【C语言基础知识】C语言字符初识和编程的开始
8月9的学习编程记录第一次编程的源代码记录#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h>int max(int a, int b){int z;if (a >b){z = a;}else{z = b;}return z;}int main(){int c = 0, h = 0,z=0;printf(“请输入两个数字:”);scanf("%d,%d", &c,&h);z = ma原创 2020-08-09 13:55:13 · 267 阅读 · 0 评论 -
【C语言总结】确定了C/C++的学习路线之后,便只能是一条路走到黑了
自己的初级编程计划和对未来编程的展望与想法一 至今为止自己已经是一个即将步入大三的大学生,对于编程的兴趣也是从最初的无所谓在一步步演变过程为兴趣以及爱好并且很可能成为之后的工作方向。对于我自己而言只是一个编程的小白和初级学者,还需要自己的努力探索和对学习编程的一往无前。二 其次讲一讲的我的编程的目标和对未来的企划,对于编程我的目标首先是奔着学习一门语言因为对新事物的好奇与好学,其次对于编程这个计划,我是存在很高的学习兴趣已经把他当作我生活中不可或缺的一部分可能有点夸张但的确是这样,我很确定了学习java原创 2020-08-08 17:46:01 · 472 阅读 · 0 评论 -
【CSDN】(Markdown)如何修改文字体及颜色
文章转自:https://blog.csdn.net/YZY_001/article/details/85257905转载 2020-11-29 12:42:28 · 456 阅读 · 1 评论 -
【C语言经典问题】约瑟夫环问题案例
约瑟夫环题目案例思路(默认间隔3出圈)序列呈现(上为front下为rear)代码实现题目案例问题描述:N个人围成一圈,从第一个人开始报数,报到m的人出圈,剩下的人继续从1开始报数,报到m的人出圈;如此往复,直到所有人出圈。思路(默认间隔3出圈)首先明确的就是当序列表满是rear是!=front的并且rear+1就为front的值。我们定义front指向第一个 rear表示最后一个画个图来表示吧。此时front 指向的是1 rear指向的是2。当要是1伪出圈front就要+1因为没有到间隔3所以原创 2020-11-28 10:10:24 · 966 阅读 · 2 评论 -
【GITHUB】github多次输入用户名解决办法
解决git push时每次都要输入Github用户名和密码的问题分析原因解决方法分析在github.com上 建立了一个小项目,可是在每次push 的时候,都要输入用户名和密码,很是麻烦原因在clone 项目的时候,使用了 https方式,而不是ssh方式。解决方法默认clone 方式是:https切换到:shh 方式或者:在termail里边 输入 git remote -v可以看到形如一下的返回结果origin https://github.com/CSDNXXXX/demo.g原创 2020-11-28 08:52:55 · 438 阅读 · 0 评论 -
【C语言编程题】有序列表合并&&序列中删除指定数字
题目分析题目要求输入两个升序序列并定义长度为m和n,先scanf两个升序序列。然后将两个序列合并得到m+n的一个有限长序列。算法点:当输入完第一个序列时,我们可以将第一个序列的尾编程第二个序列的头来进行输入这样就直接合并成一个序列的然后再利用循环判断大小进行升序即可。代码实现#include<stdio.h>int main(){ int n, m; scanf("%d%d", &n, &m); int i, j, tmp; int a[100000], .原创 2020-11-28 08:44:14 · 670 阅读 · 1 评论 -
【C语言经典】冒泡排序(从大到小)
冒泡排序分析算法代码剖析分析这里借鉴了网上的动图更加的清晰冒泡排序说实在的就是一种数据与数据之间的比较然后交换。例如:淘宝上我们可以对价格和销量进行排序。因为其排序结果和冒泡的过程一样 因此取名为冒泡排序(起码我的认知是这样的)算法冒泡排序的原理(以递增序为例)是每次从头开始依次比较相邻的两个元素,如果后面一个元素比前一个要大,说明顺序不对,则将它们交换,本次循环完毕之后再次从头开始扫描,直到某次扫描中没有元素交换,说明每个元素都不比它后面的元素大,至此排序完成。因为冒泡有两种一种上浮原创 2020-11-24 10:08:23 · 18219 阅读 · 3 评论 -
【C语言常见题型】空格替换
空格替换-%20题目分析算法精讲代码剖析题目分析算法精讲代码剖析原创 2020-11-23 12:33:58 · 542 阅读 · 0 评论 -
【C语言VS编译器】使用scanf函数有警告?_CRT_SECURE_NO_WARNINGS(四种解决方案)
一级目录一级目录一级目录原创 2020-11-22 09:37:06 · 2977 阅读 · 4 评论 -
【C语言VS2013】scanf_s和scanf的区别
定义:scanf()函数是标准C中提供的标准输入函数,用以用户输入数据.scanf_s()函数是VS开发工具提供的一个功能相同的安全标准输入函数.(在调用该函数时,必须提供一个数字以表明最多读取多少位字符)原因和区别:scanf()在读取数据时不检查边界,所以可能会造成内存访问越界:scanf_s()在读取数据时会检查边界。注: scanf_s最后一个参数n是接收缓冲区的大小,表示最多读取n-1个字符(最后一个为‘\0’).scanf_s是scanf的安全版本,当输入数组、字符和数组时需要原创 2020-11-21 13:28:32 · 989 阅读 · 0 评论 -
【C语言进阶】输出(printf)格式。如何用printf输出不同数据类型(int/char/float/double)
在使用 printf 输出整数时,不同的控制字符会有不同的输出格式。名称符号int%dshort%hdlong%ld十进制%d八进制%o十六进制%X字符串%s符号位用0表示正数,用1表示负数无符号数%ufloat%fdouble%lf保留小数点后位数%.1f %.2fchar字符串结束符‘\0’1'\0’是ASCII码表中的第0个字符,用NUL表示,称为空字符。该字符原创 2020-11-21 11:36:55 · 2807 阅读 · 0 评论 -
【C语言进阶】常见数据类型及其长度所占字节
unsigned long long的最大值:18446744073709551615常见数据类型所占字节大小数据类型所占字节大小char1字节short2字节int4字节long4字节long long8字节float4字节double5字节long double12字节常见数据类型取值范围数据类型取值范围char0-255short-32768~32767int21474836原创 2020-11-21 11:08:53 · 343 阅读 · 0 评论