C语言二维数组定义赋值问题。像a选项中,大括号里面又一个大括号,是指数组a的第一行全为“1”吗?
二维数组是由一维数组延伸而来的,每个二维数组可以看作是若干个一维数组组成的数组,二位数组的每一行可以看作是一个一维数组,而大括号里的大括号就是用于把一个个一维数组标志出来,若整个数组在定义的时候没有初始化(首次赋值),那么每个数组的每个元素的值在赋值以前都是不确定的;如果数组在定义时给部分元素初始化了,那么没有赋值的元素将自动赋值为0。这里,A选项定义了一个二维数组并未它的第一维、第二维的首个元素分别赋值为1和2,那么剩余的两个则自动赋值为0,即:
a[0][0]=1;a[0][1]=0;
a[1][0]=2;a[1][1]=0;
怎么给数组赋值?
C 语言支持数组数据结构,它可以存储一个固定大小的相同类型元素的顺序集合。数组是用来存储一系列数据,但它往往被认为是一系列相同类型的变量。
在C语言中,对数组进行赋值的三种形式
1、通过循环的形式 , 即:数组名[下标],对数组的元素进行依次赋值
2、通过循环的形式 数组名+下标 对数组的元素进行依次赋值
3、通过循环的形式 利用指针 对数组的元素进行依次赋值
c语言中字符串怎么赋值?
C语言中,字符串的赋值主要有两种方法,第一种是通过指针的方式直接赋值,第二种是通过数组直接赋值。
1、指针式赋值。
通过程序的运行情况,可以知道:char *p = "hello";这种字符串的赋值方式是完全没有问题的。要理解这种赋值方式,首先得理解双引号(特别注意:这个是双引号,不要赋值的时候给弄了个单引号)在这个语句中做了什么工作。双引号主要做了3个工作,分别是:
(1)申请了空间(在常量区),存放了字符串。
(2)在字符串尾加上了“\0”。
(3)返回地址。
这里所返回的地址就赋值给了char *类型的指针变量p。
2、通过字符数组直接把字符串赋值。

