黑马程序员技术交流社区

标题: 怎么遍历一个二维数组? [打印本页]

作者: 离渊    时间: 2014-4-25 17:49
标题: 怎么遍历一个二维数组?
本帖最后由 离渊 于 2014-4-25 18:07 编辑

举个栗子  char words[3][4]= {"w","sdsf","ew"};
作者: gaoxinglei123    时间: 2014-4-25 18:01
for(int i=0;i<3;i++){for(int j=0; j<4;j++){words[i][j]......}}这样。手机党见谅

作者: 一只小菜鸟    时间: 2014-4-25 18:02
  1.     char words[3][4]= {"w","sds","ew"};  //第二个不能是“sdsf”,以为用数组定义字符串,后面会自动加上‘\0’;所以实际长度为5
  2.     for (int i = 0; i<3; i++) {          //字符输出
  3.         for (int j=0; j<4; j++) {
  4.             printf("%c  ",words[i][j]);
  5.         }
  6.         printf("\n");
  7.     }
  8.    
  9.     for (int k=0; k<3; k++) {           //字符串输出
  10.         printf("%s\n",words[k]);
  11.     }
  12.     return 0;
复制代码



作者: 离渊    时间: 2014-4-25 19:00
一只小菜鸟 发表于 2014-4-25 18:02

为什么是一个%c 而不是两个?
作者: 离渊    时间: 2014-4-25 19:08
离渊 发表于 2014-4-25 19:00
为什么是一个%c 而不是两个?

知道了

作者: 江北土著    时间: 2014-4-29 20:50
是指上这个问题可以用一个while循环完成
int i = 0;
int a[L][N];
while(i < L*N)
{
    a[i/N][i%N] = 0;
}





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