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<string.h>头文件