二维数组

//  main.m

//  C5_二维数组

//

//  Created by dllo on 15/7/6.

//  Copyright (c) 2015年 cml. All rights reserved.

//

 

#import <Foundation/Foundation.h>

 

int main(int argc, const char * argv[]) {

    

     // 二维数组

//    int arr[5]={1,3,5,3,4,};

//    char stuName[20] = "zhang\0san";

//    printf("%s",stuName); // %s输出到'\0'结束

    

//    int arr[5] = {0};

//    int a = 10;

//    int arr1[a]; // 当长度是变量时,不需要赋值

//    

    

    // 定义一个三行四列的二维数组

//    int arr[3][4] = {1,2,3,4,5,6,7,8,9,10,11,12};

//    // 第三行第二个数

//    printf("%d\n",arr[2][1] );

//    arr[2][1] = 20;

//    printf("%-2d\n",arr[2][1]);

//    

//    // 遍历一下这个二维数组

//    for (int i =0; i< 3; i++) {

//        for (int j = 0; j<4; j++) {

//            printf("%d ",arr[i][j]);

//        }printf("\n");

//    }

    

    

    

//    for (int i = 0; i<5; i++) {

//        for (int j = 0; j<5; j++) {

//            if (arr[j]>arr[j+1]) {

//                int temp = arr[j];

//                arr[j] =arr[j+1];

//                arr[j+1] = temp;

//                

//            }

//        }

//    }

    

   // 定义一个3行4列的数组

//    int arr[3][4] = {0};

//    

//    int max = 0 ;

//    int x = 0 ;

//    int  y = 0;

//    

//   // 对数组进行随机数的赋值 范围 30 - 70

//    // 找最大值和下标

//    for (int i = 0; i< 3; i++) {

//        for (int j = 0; j<4; j++) {

//            arr[i][j] = arc4random()% (70 -30 +1) +30;

//            printf("%3d",arr[i][j]);

//            // 找最大值

//            if (max<arr[i][j]) {

//                max = arr[i][j];

//                x = i ;

//                y = j ;

//                

//            }

//        }printf("\n");

//    }

//    

//    //  整个循环外做打印

//    printf("max = %d,位置在%d,%d\n",max,x,y);

    

    // 练习1 定义二维数组,对它进行行列的交换

//    int arr[2][4] = {1,2,3,4,5,6,7,8};

//    int arrNew[4][2]={0};

//    for (int i = 0; i < 4; i++) {

//        for (int j = 0; j<2; j++) {

//            arrNew[i][j] = arr[j][i];

//        }

//    }

//    for (int i = 0; i < 4; i++) {

//        for (int j = 0; j < 2; j++) {

//            printf("%d ",arrNew[i][j]);

//        }printf("\n");

//    }

    

      // 用一个一维数组,打印出二维数组的样式

//    int arr[9] = {1,2,3,4,5,6,7,8,9};

//    for (int i = 0; i < 9; i++) {

//        if (0 == (i % 3)) {

//            printf("\n");

//        }

//        printf("%d ",arr[i]);

//    }

//    printf("\n");

//    

    // 3 行 4 列

//    int arr[12] = {0};

    // 先对 arr 进行随机数的赋值,范围 30 -70

//    for (int i = 0 ; i < 12; i++) {

//        arr[i ] = arc4random()% (70 -30 +1) + 30;

//        // 然后打印 3 行 4 列

//        printf("%d ",arr[i]);

//        if (0 == (i+1) % 4) {

//            printf("\n");

//        }

//    }

//    for (int i = 0; i < 12; i++) {

//        arr[i] = arc4random()% (70 -30 +1) +30;

//        

//    }

//    for (int i = 0;  i < 3; i++) {

//        for (int  j = 0; j < 4; j++) {

//            printf("%d ",arr[i * 4 + j]);

//        }

//        printf("\n");

//    }

    

    

    

    // 定义一个二维数组的时候,可以省略行,但不可以省略列

    

    // 字符串数组

    // 字符串的个数

    // 每个字符串的最大长度

    //    char strings[3][10] = {"iPhone","Android","Win8"};

    //    printf("%s\n",strings[0]);

    //    for (int i = 0; i < 3; i++) {

    //        for (int j = 0; j< 10; j++) {

    //            printf("%c",strings[i][j]);

    //        }printf("\n");

    //    }

    //

    // Android -> xiaomi

    //     char str [ 20 ] ="  111";

    //     char str1[20] = "222";

    //

    //    strcpy(strings[1] ,"xiaomi");

    //

    //

    //    printf("%s\n",strings[1]);

    //

    //     // 找字符串里的字符

    //    printf("%c\n",strings[0][1]);

    //     // 字符串数组: 一个维度,可以找到字符串,两个维度找到字符串里对应的字符

    //

//        int maxLen = 0;

//        int max = 0;

//        char strings[4][20] = {"zhaozhicheng","guohongrSHJDKLui","luochuanxi","zhangbingjian"};

//        for (int i = 0; i < 4; i++) {

//            if (maxLen < strlen(strings[i])) {

//                maxLen = strlen(strings[i]);

//                max = i;

//            }

//        }

//        printf("最长长度是:%d\n最长的名字:%s\n",maxLen,strings[max]);

//    

    // 多维数组:多一个个维度相当于多一个容器,就多了一个for循环

//    int arr[2][2][3] = {1,2,3,5,4,6,7,8,9,10,11,12};

//    // 遍历一下这个三维数组

//    for (int i = 0; i<2; i++) {

//        for (int j = 0; j<2; j++) {

//            for (int k = 0; k<3; k++) {

//                printf("%2d ",arr[i][j][k] );

//            }printf("\n");

//

//        }printf("\n");

//    }

//    

    

//    int arr[6] = {8,5,6,1,7,3};

//    // 1fen45

//    

//    for (int i =0; i<5; i++) {

//        for (int j=0; j<5-i; j++) {

//            if (arr[j]>arr[j+1]) {

//                int temp = arr[j];

//                arr[j]=arr[j+1];

//                arr[j+1]=temp;

//            }

//        }

//    }

//    

//    for (int i =0; i<6; i++) {

//        printf("%d\n",arr[i]);

//    }

    

    

    return 0;

}

posted @ 2015-07-06 21:00  天涯ml  阅读(202)  评论(0编辑  收藏  举报