简介 这是我挖的新坑系列之《C语言的学习》,用来记录学习C语言的过程,以后星期五上传一篇文章,欢迎铁汁来喷!!!...内容 一、C语言是什么?...C语言就是人与计算机沟通的桥梁; 二、我的第一个C语言程序 #include int main()//主函数,有且只于一个 { printf("hello C");//库函数的一种...main:看第二行; 每个C语言程序不管有多少行代码,都是从main开始执行的,main函数是程序的入口,main函数也被称之为:主函数。...转义字符参考:https://zh.cppreference.com/w/c/language/escape 总结 七、语句 C语言的代码是有由一条一条的语句构成的,在C中可以分为5类: 7.1、空语句
什么是C语言 人和人交流使用的是自然语言,就像是汉语、英语、日语。 那人和计算机是怎么交流的呢? 使用计算机语言。...目前已知已经有上千种计算机语言,人们们是通过计算机语言写的程序,给计算机下达指令,让计算机工作的。 C语言就是众多计算机语言中的⼀种,当然C++/Java/Go/Python都是计算机语言。...2.C语言的历史 C语言最初是作为Unix系统的开发工具而发明的。 像windows、Linux这些都是操作系统 3. 编译器的选择VS2022 为什么要有编译器先来了解一下编译和链接。...3.1 编译和链接 C语言是一门编译型计算机语言,C语言源代码都是文本文件,文本文件本身无法执行,必须通过编译器翻译和链接器的链接,生成二进制的可执行文件,可执行文件才能执行。...C语言把 .c 为后缀的文件称为源文件,把 .h 为后缀的文件称为头文件。 5.
一.C语言是什么?...,比起低级语言易懂易学,可移植性好,编程效率高,但是执行效率没有低级语言高,需要经过编译或解释,C语言就是采用编译的一种高级语言 二.为什么选择C语言 C语言常年霸榜各类高级语言前三,属于基础必学的语言...,其功能强大,而且许多语言都很相似,如果学好C语言,对学习其他语言也有很大帮助 三.编译器的选择 C语言是一门编译型的语言,需要依赖编译器将计算机语言转换成机器能够执行的机器指令 常见的编译器有:msvc...⾔中有⼀批保留的名字的符号,⽐如:int 、if、return ,这些符号被称为保留字或者关键字,现在只需要混个眼熟和概念,后面会一一讲到。...,按ctrl+k,ctrl+u可以取消注释 总结 以上就是今天所要讲的C语言常见的概念,下次讲C语言的数据类型和变量,如果今天的内容有不懂的还请在评论区留言,当然,还有许多不足的地方也请大家多多指正,谢谢
C语言是什么? 人和计算机交流用计算机语言。 目前已知已经有上千种计算机语言,人们通过计算机语言写的程序,给计算机下达指令,让计算机工作。...C语言就是众多计算机语言中的一种,当然C++/Java/Go/Python都是计算机语言。 2. C语言的历史和辉煌 C语言最初是由Unix系统的开发工具而发明的。 3....编译器的选择---VS2022 3.1 编译和链接 C语言是一门编译型的计算机语言,C语言源代码都是文本文件,文本文件本身无法执行,必须经过编译器翻译和链接器的链接,生成二进制的可执行文件,可执行文件才能执行...C语言代码放在.c为后缀的文件中,要得到最终运行的可执行程序,中间要经过编译和链接2个过程 VS2022项目中的.c文件 .c文件的展示 C语言代码...可执行程序 3.2 编译器的对比 C语言是一门编译型的计算机语言,需要依赖编译器将计算机语言转换成机器能够执行的机器指令。 那我们常见的C语言编译器有哪些呢?
C语言关键字:C语言定义的,具有特定含义、专门用于特殊用途的C语言标识符,也称为保留字 define不是关键字,是编译器实现的,用来定义宏的预处理指令,不是C语言中的内容。...int、struct和continue都是C语言中包含的关键字。...出作用域生命周期结束 全局变量生命周期:整个程序的生命周期 常量(不变的量) 'w';//字符(单引号) "abc";//字符串(双引号) 30; 3.14; const int a = 10;//在C语言中...= RED; return 0; } 字符串 c语言里面没有字符串类型 由双引号引起来的一串字符成为字符串字面值,简称字符串(常量字符串) 字符串的结束标志是一个\0的转义字符。...-标准的输入输出头文件 单引号括起来的是字符,只存在'a',不存在'ab' 什么是库函数 库函数的使用要使用对应的头文件 关键字 程序员在创建标识的时候不能和关键字重复 关键字也不是我们自己能创建的 c语言有
1.问:c语言是什么? 它是一种语言。但是是人和计算机交流的一种语言。它与其它计算机语言不同的一处是需要编译和链接才能变成可执行程序.exe。...计算机识别的是二进制,所以c语言就是相当于人类将想要表达的东西用一种语言将其转化成二进制的形式从而使计算机能够识别并执行任务。 2.头文件和源文件是什么?....c 为后缀的⽂件称为源⽂件, .h 为后缀的⽂件称为头⽂件 在前期我们主要聚焦于源文件.c,而它们两者在本质上没有任何区别,只有后缀的区别 3.写c语言的第一个格式 #include <stdio.c...10.语句的概念 C语⾔的代码是由⼀条⼀条的语句构成的,C语⾔中的语句可分为以下五类 ·空语句:一个分号相当于一个空语句 ·表达式语句:在一个分号前加上表达式,例如a+b=c;就是一个表达式语句 ·函数调用语句...以上是我对c语言的各个概念的个人理解。
return 0; } // 关于 函数指针的概念。...return 0; } // 关于 函数指针的概念。 关于 函数指针的概念。 可以将这个 pThreadProc 理解为一个 新的类型,只不过该类型是一个指针。...(*****************************************) 答:C++语言支持函数重载,C 语言不支持函数重载。...函数被C++编译后在库中的名字 与C 语言的不同。...从名称上也可以看出,c++比c多了+,说明c++是c的超集;那为什么不叫c+而叫c++呢,是因为c++比 c来说扩充的东西太多了,所以就在c后面放上两个+;于是就成了c++ C语言是结构化编程语言,C
C 语言包含的数据类型如下图所示: 2.各种数据类型介绍 2.1整型 整形包括短整型、整形和长整形。...定义如下: char c='a'; 也可以用字符对应的ASCII码赋值,如下: char c=97; 3.数据类型与“模子” short、int、long、char、float、double...这六个关键字代表C 语言里的六种基本数据类型。 ...C 是一种简洁的语言, 命名也应该是简洁的。例如变量名MaxVal 就比MaxValueUntilOverflow 好用。标识符的长度一般不要过长,较长的单词可通过去掉“元音”形成缩写。...一定不要写出如下这样的代码: int p; char i; int c; char * a; 一般来说习惯上用n,m,i,j,k 等表示int 类型的变量;c,ch 等表示字符类型变量
我们将从C语言的基本概念讲起,逐步深入其语法、数据类型、控制结构等核心内容。...同时,我们也会分享一些学习编程的经验和技巧,帮助你更高效地掌握C语言 让我们一同踏上这段C语言的旅程,开启你的编程之旅吧! 1. 什么是C语言 C语言是一门通用计算机编程语言,广泛应用于底层开发。...了解知识: 二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。...C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。 其编译器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等 2....2019在使用scanf时,会报错,这时我们需要在首行填上一行代码 #define _CRT_SECURE_NO_WARNINGS 1 ⭐变量的作用域和生命周期 作用域 作用域(scope)是程序设计概念
最近在学习C语言哈,还是零基础的,刚好就把学到的知识写一写记一记,在加深记忆的同时把博客的水也给填一填。 这篇文章主要记一些C语言的基础概念性问题,并且后续有新学到的还会补充!...C语言基础概念相关知识: 计算机程序:一组计算机能识别和执行的指令。 机器语言:由0和1组成的计算机可以识别的指令。...FORTRAN语言:(第一个高级语言)C语言/C++语言/JAVA语言,接近人类,并且不依赖机器。...C语言--->编译程序--->机器语言 非机构化语言(basic)-->结构化语言(C语言)-->面向对象语言(java/c++/PHP/python等) C语言的标准:C89和C99(C99为当前流行使用标准...编写执行C语言程序的步骤: 用C语言编成的程序就是源程序(没有编译过) 1.编写C语言程序(.c),此文件为数据文件,文本文件或二进制。 2.对源程序进行编译(.obj),编译后的文件为目标文件。
C语言是什么? 人和人交流使用的是自然语言,如:汉语、英语、日语...... 那和计算机是怎么交流的呢?使用计算机语言。...C语言就是众多计算机语言中的一种,当然C++/Java/Go/Python都是计算机语言。 2. C语言的历史和辉煌 C语言最初是作为 Unix 系统的开发工具而发明的。...编译器的选择VS2022 3.1 编译和链接 C语言是⼀门编译型计算机语言,C语言源代码都是文本文件(C语言代码是一段英文字母,文本组成的信息),文本文件本身无法执行,必须通过编译器翻译和链接器的链接,...那我们常见的C语言编译器都有哪些呢?...C语言是一种结构化的程序设计语言,那什么是结构化呢?
也就是 算法(algorithm) 一个程序除了 算法 和 数据结构 这两个要素外,还应当采用 结构化程序设计方法 进行程序设计,并用某一种 计算机语言 表示。...什么是算法 算法是为了解决问题而执行的一系列步骤。 计算机的算法可以分为两大类别: 数值运算算法 数值运算的目的是求数值解。 非数值运算算法 非数值运算用于事务管理领域(图书检索,人事管理等等)。...算法的目的是为了求解,“解”就是输出 有效性。算法中的每一个步骤都应当能有效地执行,并得到确定的结果 怎么表示一个算法 常用的方法有: 自然语言 流程图 NS图 伪代码 .........流程图表示算法 流程图是用一些图框来表示各种操作, 用图形表示算法,直观形象,易于理解。...image.png 以上面的例子做N-S图 image.png 用C语言表示算法 while循环 #include int main() { int a,i; a
if(n<m){ temp = n; n = m; m = temp; }; p=n*m; // 欧几里德算法 // 100 模 60 余 40 // 60...='\n'){ // 字符 if(c>='a'&&c='A'&& c<='Z'){ letters++; // 空格 }else if(c...==32){ space++; // 数字 }else if(c>='0' && c<='9'){ digit++; // 其它 }else{...甲队为a,b,c三人,已队为x,y,z三人,由抽签决定比赛。有人向队员打听比赛的的名单。a说他不和x比,c说他不和y,z比,请编程序找出三队赛手的名单。...='z'){ printf("a--%c\tb--%c\tc--%c\n",i,j,k); // a--z b--x c--y
include int main(void) { int a = 1; printf("\na的地址%#x\n", &a); return 0; } 输出 a的地址0x61ff0c...a是一个int型变量,其的值1保存在地址0~0xFFFFFFFF之间的编号为0x61ff0c的地址上。...int a; int *p=&a; //初始化赋值,&a表示取变量a的首地址 2、动态赋值 int a; int *p; p=&a; //利用&a获得变量a的首地址,然后赋值给p 二、注意区分的两个概念...以上就是指针的基本概念,关键理解指针的类型与指针所指向的类型。
摘要:本文主要是对 DOA(波达方向)估计中传统 MUSIC 算法及其改进算法作了简要 的介绍,主要包括了MUSIC算法,求根MUSIC算法,循环MUSIC算法,波束空间MUSIC算法,SMART MUSIC...Direction Of Arrival,DOA)技术,就是根据来波信号估计其方位角的信号处理技术.为了降低移动通信系统中的多址干扰、降低发射功率和提高系统容量,智能天线目前成为研究的热点.它引入了空分多址的概念...各算法分析及性能介绍 2.1 MUSIC算法之前的DOA估计算法 DOA估计的传统方法主要基于波束形成和零陷引导的概念,并没有利用到接受信号矢量的模型或者是信号和噪声的统计模型。...2.3求根MUSIC算法: 2.3.1求根MUSIC算法原理 对于阵元间距为d的等距直线阵列,导引向量 的第m个元素可以表示为 则MUSIC谱函数可以写成: 其中 是矩阵C中第L条对角线的元素之和。...假定入射信号为窄带信号,波长为 ,则M维接受信号矢量可以表示为 其中 是阵列方向向量: 从向量 中抽出一个L维的子向量 ( ),有 当满足 时, 当满足 时, 可以证明,向量 的子向量的相关矩阵C满足
直接选择排序 2.2堆排序 三 交换排序 3.1冒泡排序 3.2快速排序 3.3快速排序的优化(非递归) 四 归并排序 4.1归并排序递归版本 4.2归并排序非递归版本 总结 ---- 前言 常见的排序算法如下...时间复杂度:O(N^2) 空间复杂度:O(1),它是一种稳定的排序算法 稳定性:稳定 1.2希尔排序 希尔排序法又称缩小增量法。..., key+1, right); } 1.空间复杂度 0(lgn) 2.时间复杂度0(n*lgn) 3.3快速排序的优化(非递归) 主要通过数据结构栈来模拟实现类似于二叉树的前序遍历 如果有同学对C语言实现栈不熟悉可以点一下链接...:C源实现数据结构栈 具体代码如下: typedef int STDataType; typedef struct Stack { STDataType* a; int top; // 栈顶 int...,该算法是采用分治法(Divide andConquer)的一个非常典型的应用。
前言 贪心算法的定义: 贪心算法是指在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,只做出在某种意义上的局部最优解。...贪心算法不是对所有问题都能得到整体最优解,关键是贪心策略的选择,选择的贪心策略必须具备无后效性,即某个状态以前的过程不会影响以后的状态,只与当前状态有关。...贪心算法和动态规划本质上是对子问题树的一种修剪,两种算法要求问题都具有的一个性质就是子问题最优性(组成最优解的每一个子问题的解,对于这个子问题本身肯定也是最优的)。...贪心算法的定义: 贪心算法是指在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,只做出在某种意义上的局部最优解。...总结 这篇文章我简单介绍了贪心算法,真的只是简单介绍,大佬们可以划走了,但这篇文章对新手还是会有很多帮助的,希望这篇文章可以为广大算法新手们的深入学习打好基础。
一、冒泡排序 冒泡排序(英语:Bubble Sort)是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序(如从大到小、首字母从A到Z)错误就把他们交换过来。...; i < len; i++) printf("%d ", arr[i]); return 0; } 二、选择排序 选择排序(Selection sort)是一种简单直观的排序算法...交换两个变量 { int temp = *a; *a = *b; *b = temp; } */ 三、插入排序 插入排序(英语:Insertion Sort)是一种简单直观的排序算法...;j--) arr[j] = arr[j-1]; arr[j] = temp; } } 四、希尔排序 希尔排序,也称递减增量排序算法...希尔排序是非稳定排序算法。
洗牌算法 Fisher-Yates洗牌算法是由 Ronald A.Fisher和Frank Yates于1938年发明的,后来被Knuth在书中介绍,很多人直接称Knuth洗牌算法, Knuth大家应该比较熟悉...,《The Art of Computer Programming》作者,算法理论的创始人。...我们现在所使用的各种算法复杂度分析的符号,就是他发明的。 等概率:洗牌算法有些人也称等概率洗牌算法,其实发牌的过程和我们抽签一样的,大学概率论讲过抽签是等概率的,同样洗牌算法选中每个元素是等概率的。...用洗牌算法思路从1、2、3、4、5这5个数中,随机取一个数 [640?...int randX = randNumber/M; int randY = randNumber%M; swap(iX,iY,randX,randY); } 更多案例可以go公众号:C语言入门到精通
领取专属 10元无门槛券
手把手带您无忧上云