二维数组·字符数组·与字符串

479 阅读1分钟

本文已参与[新人创作礼]活动,一起开启掘金创作之路

二维数组

1.一般形式

   类型名  数组名 [常量表达式1][常量表达式2]:

int a[3][4]   

2.二维数组的初始化

  <1>对全部元素赋初值,通过使用大括号分成若干行,赋予不同的行:

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

  <2>也可按顺序赋值将所有的数据写在一对花括号内:

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

  <3>如果对全部数组元素置初值,则第一维的长度可以省略:

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

  下面是一个程序实现对二维数组的简单输出

 


字符数组

1.定义

  char数组名[常量表达式];

  char c[9];

2.初始化

  char c[9]={'c','p','r','o','g','r','a','m','x'};

  当对全体元素赋初值时也可以省略下标

  char c[ ]={'c','p','r','o','g','r','a','m','x'}; 


字符串

                     char c[7 ]="I am k":

 

 字符串"I am k"长度为7,其有效长度为6,因为系统会在最后一位自动添加字符串结束标志'\0'。

字符串的结束标志     (左面代码右面运行结果)

1.  ‘\0’

2. c[i]!=0

 

3.小于strlen(c)时

 


字符串数组

  字符串数组其实可以理解成二维数组的概念访问也是一样的,用[ ]进行解引用,对于二维数  组 char**a,要访问第i个字符串的第i个字符,可以利用a[i][j]来访问。

char names[5][20] = {
 "zhngsa",
 "liisi",
 "dangwu",
}