C语言结构体习题及答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第9章结构体
1.定义以下结构体类型
struct s
{
int a;
char b;
float f;
};
则语句printf("%d",sizeof(struct s))的输出结果为【】。
A) 3 B) 7 C) 6 D) 4
2.当定义一个结构体变量时,系统为它分配的内存空间是【】
A)结构中一个成员所需的内存容量
B)结构中第一个成员所需的内存容量
C)结构体中占内存容量最大者所需的容量
D)结构中各成员所需内存容量之和
3.定义以下结构体类型
struct s
{ int x;
float f;
}a[3];
语句printf("%d",sizeof(a))的输出结果为【】
A) 4 B) 12 C) 18 D) 6 7.定义以下结构体类型
struct student
{
char name[10];
int score[50];
float average;
}stud1;
则stud1占用内存的字节数是【】。
A) 64 B) 114 C) 228 D) 7
9、设有一结构体类型变量定义如下:
struct date
{ int year;
int month;
int day;
};
struct worklist
{ char name[20];
char sex;
struct date birthday;
} person;
若对结构体变量person的出生年份进行赋值时,下面正确的赋值语句是。。。。
A. year=1976
B. birthday.year=1976
C. person.birthday.year=1976
D. person.year=1976
1、若程序中有以下的说明和定义:
struct abc
{ int x;char y; } 花括号后少了分号。
struct abc s1,s2;
则会发生的情况是______。
A) 编译时错B) 程序将顺序编译、连接、执行C) 能顺序通过编译、连接、但不能执行D) 能顺序通过编译、但连接出错