C5_二维数组

//

//  main.m

//  C5_二维数组

//

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

//  Copyright (c) 2015 Clare. All rights reserved.

//


#import <Foundation/Foundation.h>


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

    

    // 二维数组

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

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

//    printf("%s\n",stuName);

    

    

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

//    int a = 10;

//    scanf("%d",&a);

//    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("%d\n",arr[2][1]);

    

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

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

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

//            printf("%2d ",arr[i][j]); // 2 的作用是加上空格

//        }

//        printf("\n");

//    }

    

//    // 定义一个34列的数组

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

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

//    // 找出最大值和最大值所对应的下标

//    // 保存最大值的变量

//    int max = 0;

//    // x表示行,y表示列的下标

//    int x = 0, y = 0;

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

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

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

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

//            // 找最大值

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

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

//                x = i;

//                y = j;

//            }

//        }

//        printf("\n");

//    }

//    

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

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

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

//        }printf("\n");

//    }

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

//    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};

//    // 遍历arrarrNew进行赋值

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

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

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

//

//        }

//    }

//    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 < 3; i++) {

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

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

//        }

//        printf("\n");

//    }

//    

//    // 34

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

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

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

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

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

//    }

//    printf("\n");

//    // 然后打印34(几列就用i*几几列再加上j就行,i*后面的数为列的数)

//    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循环对字符串每一个字符进行遍历

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

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

//    }

//    

//    // Android -> xiaomi

//    

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

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

//    

   

    strlen(str); // 字符串的长度肉眼可见

    sizeof(str); // 还有一个结束符所占位置,为肉眼可见再加1

//    

    char str[20] = "1111";

    char str1[20] = "";

   

    strcpy(str1, str);

    strcat(<#char *#>, <#const char *#>);

    strcmp(<#const char *#>, <#const char *#>) // 直到比较出不同,或比较完相同

//    

//    

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

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

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

    

//    // 1 .创建一个字符串数组(内容是你周围一圈人的姓名),输出最长的字符串长度,

//    

//    char strNam[5][20] = {"gaowenping", "shichuanyang", "fangliguo", "zhujiaqi","caojun"};

//    long length = 0;

//    int a = 0;

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

//

//            if (length < strlen(strNam[i])) {

//                length = strlen(strNam[i]);

//                a = i;

//            

//        }

//    }

//         printf("%ld \n",length);

//    // 第一个字符串减去第二个字符串大于0为降序小于0 为升序


   

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

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

    //遍历一下三位数组

    

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

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

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

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

            }

            printf("\n");

        }

        printf("\n");

    }

    

    //多一个维度遍历时对应的多一层for循环

    

    

    

    

    

    

    

    

    

    

    


   return 0;

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值