黑马程序员技术交流社区

标题: 终于集齐了7钟遍历二维数组的方法 [打印本页]

作者: Judyisapunk    时间: 2015-9-6 20:46
标题: 终于集齐了7钟遍历二维数组的方法
是不是可以召唤出黑马了
#include <stdio.h>

int main(int argc, const char * argv[]) {
    // insert code here...
    char stringArr[][10]={"ilovecs","hahahah","heheheh"};
    //方法一:a[i]和%s
    for(int i=0;i<3;i++){
        printf("%s\n",stringArr[i]);
    }
    puts("二-------");
    //方法二:a[i][j]
    for (int i=0;i<3;i++) {
        for (int j=0; j<10; j++) {
            putchar(stringArr[i][j]);
        }
        putchar('\n');
    }
    puts("三-------");
    //方法三:字符串指针数组
    char *p2[3]={"ilovecs","hahahah","heheheh"};
    for (int i=0;i<3;i++) {
        printf("%s\n",p2[i]);
        printf("%s\n",*(p2+i));//不能用*p2++
    }
    //方法四:字符串指针
    char (*p)[10]=stringArr;//p可以代替stringArr遍历,不可以改变元素值
    for(int i=0;i<3;i++){
        printf("%s\n",p[i]);
    }
    puts("或者-------");
    //方法五
    for (int i=0;i<3;i++) {
        for (int j=0; j<10; j++) {
            putchar(p[i][j]);
        }
        putchar('\n');
    }
    puts("或者-------");
    //方法六
    for (int i=0;i<3;i++) {
        for (int j=0; j<10; j++) {
            putchar(*(*(p+i)+j));
        }
        putchar('\n');
    }
    //方法七
    puts("七-------");
    char *p4=stringArr;
    for (int i=0;i<30;i++) {
        if (0==i%10) {
            putchar('\n');
        }
        printf("%c",*(p4+i));
    }
    putchar('\n');
    printf("Hello, World!\n");
    return 0;
}







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2