解:设数组元素类型为整型。参考程序如下: include <stdio. h> #include <stdlib. h> p=(int *)malloc(n*sizeof (int)) return p, main printf( Enter n: " i for (i=0; i<n; i++) printf( \n") 第八章结构及其他 81C语言的结构类型在构造复杂数据类型方面与数组有何不同?(略) 82C语言的结构和联合有何区别?(略) 83完成下面判断 (1)说明一个结构变量时,系统分配给它的内存是各成员所需内存量的总合。(错) (2)说明一个结构变量时,系统分配给它的内存是成员中占内存量最大者所需的内 存容量。(错) (3)说明一个联合变量时,系统分配给它的内存是各成员所需内存量的总合。(错) (4)说明一个联合变量时,系统分配给它的内存是成员中占内存量最大者所需的内 存容量。(对) (5)结构变量可以整体赋值。(对) (6)结构变量名可以作函数形参。(对) (7)一个联合变量中不能同时存放其所有成员。(对) (8)联合类型数据可以出现在结构类型定义中,结构类型数据也可以出现在联合类 型定义中。(对) (9) enum color (red, blue, yellow, green) a, b; (Xf)解:设数组元素类型为整型。参考程序如下: #include <stdio.h> #include <stdlib.h> int *array(int n) { int *p; p=(int *)malloc(n*sizeof(int)); return p; } main() { int i,n,*p; printf("Enter n:"); scanf("%d",&n); p=array(n); if (p) { for (i=0;i<n;i++) *(p+i)=i; for (i=0;i<n;i++) printf("%d, ",*(p+i)); printf("\n"); } } 第八章 结构及其他 8.1 C 语言的结构类型在构造复杂数据类型方面与数组有何不同?(略) 8.2 C 语言的结构和联合有何区别?(略) 8.3 完成下面判断: (1)说明一个结构变量时,系统分配给它的内存是各成员所需内存量的总合。(错) (2)说明一个结构变量时,系统分配给它的内存是成员中占内存量最大者所需的内 存容量。(错) (3)说明一个联合变量时,系统分配给它的内存是各成员所需内存量的总合。(错) (4)说明一个联合变量时,系统分配给它的内存是成员中占内存量最大者所需的内 存容量。(对) (5)结构变量可以整体赋值。(对) (6)结构变量名可以作函数形参。(对) (7)一个联合变量中不能同时存放其所有成员。(对) (8)联合类型数据可以出现在结构类型定义中,结构类型数据也可以出现在联合类 型定义中。(对) (9)enum color {red,blue,yellow,green} a,b; (对)