正在加载图片...
【例11.4】建立同学通讯录 #include stdio. h #define num 3 struct mem char name [20] char phone [10] struct mem man [NUM] for (i=0: i<NUM; i++) printf( input name: \n") gets(man [i]. name) printf( input phone: \n") gets(man[i]. phone printf("name\t\t\phone \n\n") for(i=0: i printf(%s\t\t\t%s\n", man [i] name, man[i]. phone 本程序中定义了一个结构mem,它有两个成员name和 phone用来表示姓名和电话号码 在主函数中定义man为具有mem类型的结构数组。在for语句中,用gets函数分别输入各 个元素中两个成员的值。然后又在for语句中用 printf语句输出各元素中两个成员值 117结构指针变量的说明和使用 1171指向结构变量的指针 个指针变量当用来指向一个结构变量时,称之为结构指针变量。结构指针变量中的值 是所指向的结构变量的首地址。通过结构指针即可访问该结构变量,这与数组指针和函数指 针的情况是相同的 结构指针变量说明的一般形式为: struc t结构名*结构指针变量名 例如,在前面的例题中定义了stu这个结构,如要说明一个指向stu的指针变量ps 可写为 struct stu *pstu 当然也可在定义stu结构时同时说明pstu。与前面讨论的各类指针变量相同,结构指针 变量也必须要先赋值后才能使用。【例 11.4】建立同学通讯录 #include"stdio.h" #define NUM 3 struct mem { char name[20]; char phone[10]; }; main() { struct mem man[NUM]; int i; for(i=0;i<NUM;i++) { printf("input name:\n"); gets(man[i].name); printf("input phone:\n"); gets(man[i].phone); } printf("name\t\t\tphone\n\n"); for(i=0;i<NUM;i++) printf("%s\t\t\t%s\n",man[i].name,man[i].phone); } 本程序中定义了一个结构 mem,它有两个成员 name 和 phone 用来表示姓名和电话号码。 在主函数中定义 man 为具有 mem 类型的结构数组。在 for 语句中,用 gets 函数分别输入各 个元素中两个成员的值。然后又在 for 语句中用 printf 语句输出各元素中两个成员值。 11.7 结构指针变量的说明和使用 11.7.1 指向结构变量的指针 一个指针变量当用来指向一个结构变量时,称之为结构指针变量。结构指针变量中的值 是所指向的结构变量的首地址。通过结构指针即可访问该结构变量,这与数组指针和函数指 针的情况是相同的。 结构指针变量说明的一般形式为: struct 结构名 *结构指针变量名 例如,在前面的例题中定义了 stu 这个结构,如要说明一个指向 stu 的指针变量 pstu, 可写为: struct stu *pstu; 当然也可在定义 stu 结构时同时说明 pstu。与前面讨论的各类指针变量相同,结构指针 变量也必须要先赋值后才能使用
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有