牛骨文教育服务平台(让学习变的简单)
博文笔记

iOS入门(六)二维数组

创建时间:2015-08-11 投稿人: 浏览次数:374
二维数组 类型说明符[常量表达式1(可省略)][常量表达式2] = { }; 字符串数组 eg : char strings[3][10] = { "iPhone" , "Android" , "win8" } ;     

//    二维数组

    

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

//    int n = 1;

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

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

//            array[i] [j] = n ++ ;

//            printf("  - " , array [i] [j] );

//    }

//        printf( " " );

//    }

//    printf(" ");

//    

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

//    printf( " {  ");

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

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

//            array1 [i] [j ] = array[ j ] [ i ] ;

//            printf("   - " , array1 [i] [j] );

//            if (i == 3 && j == 2 ) {

//                printf( "   } ");

//        }

//        }

//        printf( "     " ) ;

//    }

//    printf( " ");

    

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

//    int max = 0 , a= 0 , b = 0 ;

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

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

//            array[i] [j] = arc4random()A + 30 ;

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

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

//                a = i ;

//                b = j ;

//            }

//            printf("  - " , array[i] [j] ) ;

//        }

//        printf( " " );

//    }

//    printf(" 最大值为  : -    下标为    :  [%d][%d] " , max , a , b  );


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

//    int a= 0 , b = 0 ;

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

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

//            array[i] [j] = arc4random()A + 30 ;

//            if (array[a] [b]  < array[i] [j] ) {

//                array[a] [b] = array[i] [j] ;

//                a = i ;

//                b = j ;

//            }

//            printf("  - " , array[i] [j] ) ;

//        }

//        printf( " " );

//    }

//    printf(" 最大值为  : -    下标为    :  [%d][%d] " , array[ a] [b ] , a , b  );

    

    

//    char str[6] [10] = { "iPhone " , "Android " , "winPhone"  , "HTML5 " , "Cocos2D-X" , "Unity3D"};

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

//        printf( " %s " , str[i] );

//    }

//    char tep[10] = { 0} ;

//    strcpy(tep, str[1]);

//    strcpy(str[1], str[4]);

//    strcpy(str[4], tep);

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

//        printf( " %s " , str[i] );

//    }

//

//    int a[6] = {0};

//    int b = 0 ;

//    char temp[10] = {0};

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

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

//            if (str[i] [j] != "0") {

//                a[i] ++;

//            }

//            }

//        if (b  < a[i] ) {

//            strcpy(temp , str[i]);

//        }

//    }

//    printf(" %s " , temp );

//    int len = 0 , index= 0 ;

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

//        if (strlen(str[i] )> len ) {

//            len = (int)strlen(str[i]);

//            index = i ;

//        }

//    }

//    printf("%s " , str[ index ]);

          输入6个字符串,并对它们按从小到大的顺序排序后输出。 找出一个二维数组中的“鞍点”,即该位置上的元素在该行中最大,在该列中最小(也可能没鞍点),打印出有关信息。【附加题】 有一个三行四列的整形数组,取值范围是30 - 90,求出每行当中的最大值,最小值,以及每行元素的和

//    printf( " 题目一  :     " );

//    char str[6][10] = { 0 } ;

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

//        scanf( "%s" , str[i] );

//    }

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

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

//            if (strlen(str[j] ) > strlen(str[j+1])) {

//                char temp[10] = {0};

//                strcpy(temp, str[j]);

//                strcpy(str[j], str[j+1]);

//                strcpy(str[j+1], temp);

//            }

//        }

//    }

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

//        printf( " %s ", str[i] ) ;

//    }


//    printf( " 题目二  :     " );

//    int str[3][3] = {0};

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

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

//            str[i][j] = arc4random() % 21;

//            printf("= ",str[i][j]);

//        }

//        printf(" ");

//    }

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

//        int max = 0;

//        int min = 21;

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

//            max = max > str[m][n] ? max : str[m][n];

//        }

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

//            if (str[m][p] == max) {

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

//                    min = min < str[k][p] ? min : str[k][p];

//                }

//                if (max == min) {

//                    printf("%d ",max);

//                }

//            }

//        }

//    }


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

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

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

//            array[i][j] = arc4random() % 20 + 10 ;

//            printf( " = " , array[i][j] ) ;

//        }

//        printf( " " ) ;

//    }

//    int n = 0 ;

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

//        int max = 0 , min   = 30, row = 0 , col = 0 ;

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

//            if (array[i][j] > max ) {

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

//                col = j;

//            }

//        }

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

//            if (array[i][k] == max ) {

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

//                    if ( min > array[h][k] ) {

//                        min = array[h][k] ;

//                        row = h ;

//                    }

//                }

//                if (max == min ) {

//                    n = max ;

//                    printf( " 该数组有鞍点   :      array[%d][%d] =  %d    " , row, col ,n );

//                }

//            }

//        }

//    }

//    if ( n == 0 ) {

//        printf( " 该数组没有鞍点 !!! " ) ;

//    }


//    printf( " 题目三  :     " );

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

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

//        int max = 0 , min = 90 , sum = 0 ;

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

//            array[i][j] = arc4random()a + 30;

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

//            max = max > array [i][j] ? max : array[i][j];

//            min = min < array[i][j] ? min : array[i][j];

//            sum += array[i][j];

//        }

//        printf( " ") ;

//        printf( " 本行当中最大值为 :  -   最小值为  :   -    各个元素之和为   - "  , max , min  , sum );

//    }

//

    printf( " 题目三  :     " );

    int array[3][4] = {0};

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

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

            array[i][j] = arc4random()a + 30;

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

        }

        printf( " ") ;

    }

    

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

        int max = 0 , min = 90 , sum = 0 ;

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

            max = max > array [i][j] ? max : array[i][j];

            min = min < array[i][j] ? min : array[i][j];

            sum += array[i][j];

        }

        printf( "第 %d 行当中最大值为 : -   最小值为  :  -    各个元素之和为  - "  ,  i +1 , max , min  , sum );


声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。