资源描述:
《c语言结构体数组介绍》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、C语言结构体数组介绍数组的元素也可以是结构类型的。因此可以构成结构型数组。结构数组的每一个元素都是具有相同结构类型的下标结构变量。在实际应用中,经常用结构数组来表示具有相同数据结构的一个群体。如一个班的学生档案,一个车间职工的工资表等。方法和结构变量相似,只需说明它为数组类型即可。例如:1.structstu{2.intnum;3.char*name;4.charsex;5.floatscore;6.}boy[5];定义了一个结构数组boy,共有5个元素,boy[0]~boy[4]。每个数组元素都具有structstu的结构形式。对结构
2、数组可以作初始化赋值。例如:1.structstu{2.intnum;1.char*name;2.charsex;3.floatscore;4.}boy[5]={5.{101,"Liping","M",45},6.{102,"Zhangping","M",62.5},7.{103,"Hefang","F",92.5},8.{104,"Chengling","F",87},9.{105,"Wangming","M",58};10.}当对全部元素作初始化赋值时,也可不给出数组长度。计算学生的平均成绩和不及格的人数。1.structstu{2
3、.intnum;3.char*name;4.charsex;5.floatscore;6.}boy[5]={7.{101,"Liping",'M',45},8.{102,"Zhangping",'M',62.5},1.{103,"Hefang",'F',92.5},2.{104,"Chengling",'F',87},3.{105,"Wangming",'M',58}4.};5.main(){6.inti,c=0;7.floatave,s=0;8.for(i=0;i<5;i++){9.s+=boy[i].score;10.if(boy[
4、i].score<60)c+=1;11.}12.printf("s=%f",s);13.ave=s/5;14.printf("average=%fcount=%d",ave,c);15.}本例程序中定义了一个外部结构数组boy,共5个元素,并作了初始化赋值。在main函数中用for语句逐个累加各元素的score成员值存于s之中,如score的值小于60(不及格)即计数器C加1,循环完毕后计算平均成绩,并输出全班总分,平均分及不及格人数。建立同学通讯录1.#include"stdio.h"2.#defineNUM33.stru
5、ctmem{4.charname[20];5.charphone[10];6.};7.main(){8.structmemman[NUM];9.inti;10.for(i=0;i6、t%s",man[i].name,man[i].phone);19.}本程序中定义了一个结构mem,它有两个成员name和phone用来表示姓名和电话号码。在主函数中定义man为具有mem类型的结构数组。在for语句中,用gets函数分别输入各个元素中两个成员的值。然后又在for语句中用printf语句输出各元素中两个成员值。