C 结构体数组的初始化


  1  

    结构体数组的初始化———结构体数组与其它的变量或数组一样,可以在定义时对成员进行相应的初始化工作。

 

 

   2、例子:

        struct ST

        {

         int a;

         float b;

         char c;

        }a[ 2 ]={ {1,2.5,‘t’} ,{3,1.5,'k'} };

 

       例子分析:

        (1)通过上面的例子,我们可以看到定义了一个结构体数组a,然后,在数组的后面使用=以及一对大括号,而大括号中再使用一对大括号来说明要对哪个元素进行赋值,而初始值的类型与数量必须与成员一一对应。

        

     

 

 3、例子:

        struct ST

        {

         int a;

         float b;

         char c;

        }a[ 2 ]={ 1,2.5,‘t’ ,3,1.5,'k' };

 

       例子分析:

        (1)通过上面的例子,我们可以看到定义了一个结构体数组a,然后,在数组的后面使用=以及一对大括号,然后,就按照成员的顺序进行赋值即可,当已经对所有的成员赋值完毕以后,如果还有数组的元素没有初始化,就可以继续从第1个成员开始按顺序赋值,直到数组中所有的元素都初始化完成,而初始值的类型与数量必须与成员一一对应。

        

     

 

  4、结构体2维数组进行初始化

 

    例子:

        struct ST

        {

         int a;

         float b;

         char c;

        }a[ 2 ][ 2 ] = { {1,2.5,‘t’,2,0.5,'x'} ,{3,1.5,'k',4,0.5,'y'} };

 

       例子分析:

        (1)通过上面的例子,我们可以看到定义了一个结构体2维数组a,然后,在数组的后面使用=以及一对大括号,而大括号中再使用一对大括号来说明要对第几行的元素进行赋值

        (2)然后,从第2个大括号开始,就是对第一行中,第1列的元素开始赋值,例子中的结构体有3个,所以,就分别赋值1,2.5,'t',这样,就对第1行,第1列的元素初始化完成。

        (3)然后,由于数组定义时有2列,所以,就继续对第1行,第2列的元素进行赋值,分别是2,0.5,'x',这样,就对第1行第2 列的元素都初始化完了,所以,加上“}”说明第一行初始化完成。

 

        (4)由于,数组定义时有两行,所以,接着对第二行的元素进行初始化,所以,在“,”后面再加上一个“{”说明对第2行的元素进行初始化,然后,也是从第1列开始赋值,分别是3,1.5,'k',这样就对第1列中3个成员赋值完毕。

        (5)然后,由于数组定义时有2列,所以,就继续对第2行,第2列的元素进行赋值,分别是4,0.5,'y',这样,就对第2行第2列的元素都初始化完了,所以,加上“}”说明第2行初始化完成。

 

        (6)最后,由于数组只定义了2行,所以,初始化可以结束,这样,最后就加上“}”与“;”说明初始化完成。

     

 

   非常好,现在,我们已经掌握了C中的“结构体数组初始化”这个知识点,但是,如何去运行用它呢?所以,我们就要通过下方的按钮进入到游戏中,然后,运用“结构体数组初始化”去完成任务,这样,才可以加深大家对每个知识点的理解和运用,以及“尽快进入到编程的状态”

 

    不要停留在理论规则上面,快动起来吧!

 

(通过游戏模式学习与训练,需要在电脑上运行)

进入游戏学习与训练