嵌入式 从入门到精通 第七天

VMware workstation 快捷命令
yy:复制
p:粘贴
dd:剪切


1 常见排序方法:
    1. 冒泡排序:
        设数组中有n个数
        外层需要进行i = n - 1趟冒泡排序就可以将所有元素升序排列了
        j <9-i
        内衬层每次需要循环 9-i-1次
        
    2.插入排序
    3.选择排序
    4.希尔排序
2. 二维数组
    1.二维整形数组:
        1.定义:数据类型 数组名[行数][列数]
            定义时下标不能是常量或者常量表达式,但是访问的时候可以
            行数和列数 :整形常量或者整形常量表达式。
                int a[2][3];
                1    2    3
                4    5    6
        2.元素访问:
            a[0][0]
            下标:可以是常量或者变量或者表达式
        3.元素初始化:
            初始化!=赋值
            1.全部初始化
                int a[2][3] = {1,2,3,4,5,6};
            2.局部初始化
                int a[2][3] = {{1,2,3},{4,5,6}};
            3.默认初始化;
                行能省略,列不能省略;
                int a[ ][3] = {1,2,3,4,5,6,};
                
        4.二维数组的存储:
            int a[2][3];
            数组所占空间大小 = 数据类型所占空间大小*行数*列数
            1.连续性
                数组存放空间连续
            2.有序性
                逐行从左向右存储
            
            sizeof(a)/sizefo(a[0][0]);
        
        结论:二维数组可以看成是由一维数组构成的一维数组
        2.多维数组:
                N维数组可以理解成是由N-1维数组构成的一维数组
    2.字符型数组:
        "hellow world"
        1.使用场景:
            c语言没有字符串类型,也无法定义字符串变量,只能通过字符型数组,每个元素存放一个字符,最终存放字符串。
        2.字符型数组的定义:
            数据类型 数组名[元素个数];
            注:
                1.元素个数必须为常量或者常量表达式,不能为变量表达式。
                2.元素个数必须能容纳下所有字符(\0),所以我们一般定义字符型数组会给较多的空间
            字符型数组和字符串区别:
                1.字符型数组可以存放字符,不一定包含\0
                2.字符串最末尾一定要有\0;
        3.字符型数组的初始化:
            初始化是指定义时给每一个元素赋初值。
            1.全部初始化:
            char str[6] = {'h' , 'e' , 'l','l' ,'o'  ,'\n'};
            char str[6] = {"hello"};
            char str[6] = "hello";
            以上三种初始化方式为等价
            2.局部初始化;
            char str[6] = {'h', e', 'l', '\0'};            // : 没有给定初值的字符值为0值 也就是\0
            3.默认初始化:
            char str[] = {'h' , 'e' , 'l' , 'l' , 'o' , 'w' , '\0'};
            char str[] = {'' hello ''};
        4.数组的存储:
                字符型数组所占字节
sizeof:获得一个变量或者数据类型所占内存空间的字节数。
        5.数组的输入和输出:    
            输出
                printf("%s\n",str);
                    puts(str)    ;
            输入
                scanf("%s" ,str);
                gets(str);
        6.字符串常见的操作函数:
            strlen:获得字符串的长度(字符串开头 到离开头最近的字符个数)
                "hello world" : 长度 11
                注意:使用strlen是要加上 #include头文件

你可能感兴趣的:(算法)