- 博客(17)
- 资源 (2)
- 收藏
- 关注
原创 C语言提高篇-数据结构~二叉树
C语言提高篇-数据结构~二叉树1、 基本概念栈/队列/链表 - 属于逻辑结构中的线性结构二叉树 - 属于逻辑结构中的树形结构在计算机主中,二叉树就是指每个节点最多有两个子节点的树形结构,叫做二叉树其中最起始的节点叫做根结点,整棵树只有一个根结点,除根结点之外,每个节点有且只有一个父节点其中没有任何子节点的节点叫做叶子节点,叶子节点有父节点没有子节点除了根结点和叶子节点之外,剩下的节点叫做枝节点,枝节点有父节点也有子节点如果该二叉树中每层节点个数均达到最大值,并且每个枝节点都有两个子节点,这
2020-09-28 11:25:50
277
原创 C语言提高篇-数据结构~链表
C语言提高篇-数据结构~链表一、链表(list)1、基本概念由若干个地址不连续的节点序列组成,不同的节点之间彼此通过指针连接组成的数据结构,叫做链表2、基本分类(1)单向线性链表(重点)每个节点除了存储数据元素本身之外,还需要保存下一个节点地址的指针,叫做后指针其中链表中的第一个节点,叫做头节点;把指向头节点的指针,叫做头指针链表中最后一个节点,叫做尾结点;指向尾结点的指针,叫做尾指针;尾结点中的后指针是一个空指针(2)单向循环链表与单向线性链表类似,所不同的是尾结点的后指针指向头
2020-09-28 10:18:19
252
原创 C语言提高篇-数据结构~队列
C语言提高篇-数据结构~队列一、 队列基本特征具有先进先出特性的数据结构 叫做 队列FIFO(first in first out)插入元素的位置叫做队尾删除元素的位置叫做队头/队首二、 基本操作创建(create)、销毁(destroy)、入队(push)、出队(pop)、遍历(travel)、计算队列中元素的个数(travel)、判断队列是否为满(full)、判断队列是否为空(empty)、获取队首元素值(get_head)、获取队尾元素值(get_tail)示例如下://使用顺序存储
2020-09-27 11:12:28
214
原创 C语言提高篇-数据结构~栈
C语言提高篇-数据结构~栈一、栈的基本特征和实现1、 基本特征具有后进先出特性的数据结构LIFO增加/删除元素都在数据结构的同一端操作,栈顶二、 基本操作创建 销毁 …1、 使用顺序存储结构实现栈的基本操作示例如下://使用顺序存储结构实现队列的基本操作#include <stdio.h>#include <stdlib.h>//定义队列的数据类型typedef struct{ int* arr;//记录连续存储空间的首地址 int len;//
2020-09-22 14:52:54
147
原创 C语言提高篇-数据结构
C语言提高篇-数据结构一、 基本概念在计算机中,数据结构是指数据元素在计算中的存储和组织形式,主要描述数据元素之间的逻辑关系以及位置关系等,也就是说数据结构描述的若干个元素之间的关系数据结构的选择会影响到程序执行的时间效率(时间复杂度)以及空间效率(空间复杂度)计算机程序 = 数据结构 + 算法二、 数据结构的三种层次1、逻辑结构主要描述数据元素之间的逻辑关系2、物理结构主要描述数据元素之间的位置关系3、运算结构主要描述数据结构的实现操作三、 逻辑结构的分类1、集合结构主要描述所
2020-09-21 17:46:25
369
原创 ARM中的RO、RW和ZI DATA说明
ARM中的RO、RW和ZI DATA说明一、ARM程序的组成此处所说的“ARM程序”是指在ARM系统中正在执行的程序,而非保存在ROM中的bin映像(image)文件。一个ARM程序包含3部分:RO,RW和ZIRO是程序中的指令和常量RW是程序中的已初始化变量ZI是程序中的未初始化的变量二、ARM映像文件的组成所谓ARM映像文件就是指烧录到ROM中的bin文件,也成为image文件。以下用Image文件来称呼它。Image文件包含了RO和RW数据。之所以Image文件不包含ZI数据,是因
2020-09-16 17:39:50
2296
原创 C语言基础-链表
C语言基础-链表一、什么是链表线性表的链式存储称为链表。1、链式存储结构中,存储单元可以使相邻的,也可以是不相邻的。2、在每个结点中,除了要保存结点本身的数据信息外,还必须保存在逻辑上相邻的结点的地址信息,这个地址信息就叫指针。保存结点中的数据信息的域称为数据域;保存节点中下一个地址信息的域称为指针域。链表正是通过每个结点指针域中的指针,才将线性表的n个结点连接在一起。3、讲解说明如果表是a1,a2,…,an ,那么含有元素ai的那个单元中的指针应指向含有元素ai+1的单元(i=1,2,…,n-
2020-09-14 16:00:23
276
原创 C语言基础-结构体、共用体、枚举
C语言基础-结构体、共用体、枚举一、结构体1.是一组有序不同数据类型的数据集合(是一种构造数据类型)2.声明结构体类型struct 结构名{类型1 成员变量1;类型2 成员变量2;};例:struct student // 定义一种结构体类型{char name[20];int age;int num;char addr[23];} ;3.定义结构体变量第一种方式 struct 结构名 变量名;例:struct student sam;//定义
2020-09-10 16:34:50
321
原创 C语言基础-数组
C语言基础-数组一、数组是什么数组是同种类型的数据连续存储二、数组定义类型说明符 数组名 [常量表达式];例:int a[5];// 定义了一个整型数组,数组名为a 这个数组当中有5个元素,也就是能存储5个整型的值1、定义数组的同时初始化数组例:int a[5]={1,2,3,4,5};2.如果在定义数组的同时初始化数组元素的值,这个下标5可以省略例:int a[]={1,2,3,4,5};二、数组的使用1.单个元素的引用例:#include “stdio.h”voi
2020-09-10 11:24:24
895
1
原创 c语言基础-指针初探
c语言基础-指针初探一、指针的概念指针就是地址二、指针的定义指针类型 *指针变量名;指针类型 *指针变量名 = 赋初值(地址);什么是指针类型:指针指向地址的数据类型指向某个数据类型的变量例子:#include <stdio.h>int main(void){int xyd = 5;int p=&xyd; // 定义一个指针 * 在指针定义的时候只是标识这个变量是指针,并没有任何运算意义// 在定义指针变量的同时对指针初始化 & 取
2020-09-05 15:51:12
145
原创 c语言基础-三大结构和九条语句
c语言基础-三大结构和九条语句一、三大结构顺序结构、选择结构、循环结构1、顺序结构:从上往下、从左往右依次执行2、选择结构:1)if()…else…条件语句2)switch多分支语句3)break终止执行 switch或循环语句3、循环结构:4)for()…循环语句5)while()…循环语句6)do…while()循环语句7)continue结束本次循环语句8)goto转向语句9)return从函数返回语句二、九条语句1、if:选择单个if代表条件成立才执行,如果条件不
2020-09-05 14:58:28
1961
原创 c语言基础-运算符
c语言基础-运算符运算符优先级:运算符一共15个优先级,1~15 数值越小,优先级越高,就先运算同种优先级,不全是从左向右运算,看结合性(自左向右,自右向左)优先级1:自左向右() 程序当中有括号,先算括号[] 数组的声明和元素的引用. 结构体成员的引用-> 结构体指针引用结构体成员优先级2:自右向左.- 负 单目运算符.~ 按位取反 二进制0-1 1-0 0x3F – 0011 1111 – 1100 0000 – 0xC0++
2020-09-05 14:01:45
812
原创 c语言基础-全局变量|局部变量|静态变量
c语言基础-全局变量|局部变量|静态变量一、全局变量:不包含在任意函数内,文件内定义的从定义开始到文件结束都有效的变量存放在内存当中,如果没有初始化,初值为0#include <stdio.h>void fun(void);int a;int main(void){printf(“11 %d\n”,a);fun();printf(“33 %d\n”, a);a = 1;printf(“44 %d\n”, a);return 0;}void fun(void
2020-09-05 13:32:42
632
原创 C语言基础-函数的概念
c语言基础-函数的概念一、函数的定义:将常用的整体实现某个功能的代码块封装起来,用到的时候可以直接调用函数也是模块化编程的一种体现二、函数的定义格式:函数类型 函数名(形参类型 形参名,形参类型 形参名,…………){函数的执行语句;return 返回的值;}函数类型就是函数的返回值类型三、函数的分类:1)无形参 无返回值2)有形参 无返回值3)无形参 有返回值4)有形参 有返回值1.无形参 无返回值#include <stdio.h>void print_
2020-09-05 12:57:51
7689
原创 c语言基础-32个关键字
c语言基础-32个关键字一、关键字C语言已经定义了有特殊功能的符号(单词),编程过程中命名不能冲突,这些符号只能按C语言定义的功能使用二、数据类型关键字1.基本数据类型(5个)void:空类型char:字符型int :整型数据float:单精度浮点型double :双精度浮点型2.类型修饰关键字(4个)short:短整型 short intlong :长整型数据signed:有符号数据类型 signed intunsigned:无符号数据类型3.复杂类型关键字(5个)st
2020-09-05 12:46:13
1919
原创 c语言基础-变量类型和定义
c语言基础-变量类型和定义一、常量与变量常量:固定的一个值 例如1 2 3 A B变量:一个固定的内存地址,其中存储的值可以变化,这个地址的名字在程序体现就是变量例子:#include “stdio.h”int main(void){int a = 6; // a 是一个变量 = 赋值号 6 是一个常量// 将常量6赋值给变量aa = 7; // 变量的值是可以修改的return 0;}二、变量的命名规则1、变量名由字母、数字、下划线组成2、不能以数字开头
2020-09-05 11:42:51
7900
原创 c语言敲代码前需了解的基础概念
c语言敲代码前需了解的基础概念一、c语言文件后缀C语言以.c为文件后缀二、c语言注释1、// 两个斜杠 注释 不是要编译的C语句 C++定义的注释方式 C语言也可以用// 一般用于单行注释2、/* 标准C语言的注释方式 一般用于多行注释 */三、#include "stdio.h"的解读1、 #C语言当中用#代表预处理2、include包含某个文件3、<> ““修饰头文件 <>指定到编译器默认库文件路径搜索 一般系统定义的头文件用<>4、”” 先
2020-09-05 11:04:25
622
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人