自学笔记-C语言复习2015年7月4日

来源:互联网 发布:西方音乐史知乎 编辑:程序博客网 时间:2024/05/22 17:21
 十七、数组
6、选择排序(selection sort )
 void selectSort (int a[ ],int n) {
                         int t;
                         for (int i=0; i<n-1; i++;) { 
                               for(int j=i+1; j<n; j++) {
                                    if (a[i]>a[j]) {
                                       t = a[i];
                                       a[i] = a[j];
                                       a[j] = t;
                                    } 
                                }
                          }
}
7、折半查找
int searchItem (int a[ ],int n,int key) { 
                       int low = 0,high = n-1,mid;
                       while (low <= high) {
                                mid = (low + high) / 2;
                                if (key > a[mid]) { 
                                   low = mid + 1;
                                }else if(key < a[mid]) {
                                    high = mid - 1;
                                }esle{
                                     return mid;
                                }
                       }
}
8、二维数组
1、一个一维数组的每一个元素又被声明为一维数组,从而构成二位数组是特殊的一维数组;
2、类型说明符 数组名[常量表达式1][常量表达式2],表达式1代表行长度,表达式2代表列长度;
3、二维数组的初始化
1)定义同时初始化
A、完全初始化:分段赋值 int a[m] [n] ={{a,b……},{c,d……},……},连续赋值
 int a[m] [n] = {a,b,c,d……},省略一维长度的分段和连续;
B、部分初始化: 未初始化的元素自动赋值为0。
2)先定义后初始化 
4、二维数组的遍历 :使用双重for循环 a[m][n]
 for (int i = 0;i < m;i++) {
       for (int j = 0; j < n;j++) {
       printf ("d%\t,a[i][j]") 
       }      
 }
return = 0; 
5、二维数组的存储通一维数组。
6、二维数组元素做函数的参数相当于变量的值传递,二维数组名则是地址传递。
0 0
原创粉丝点击