《C语言结构体习题及答案(共4页).doc》由会员分享,可在线阅读,更多相关《C语言结构体习题及答案(共4页).doc(4页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上第9章 结构体1定义以下结构体类型struct sint a;char b;float f;则语句printf(%d,sizeof(struct s)的输出结果为【 】。A) 3B) 7C) 6D) 42当定义一个结构体变量时,系统为它分配的内存空间是【 】A)结构中一个成员所需的内存容量 B)结构中第一个成员所需的内存容量 C)结构体中占内存容量最大者所需的容量 D)结构中各成员所需内存容量之和3定义以下结构体类型 struct s int x; float f; a3;语句printf(%d,sizeof(a)的输出结果为 【 】 A) 4 B) 12 C) 18
2、D) 64定义以下结构体数组 struct c int x; int y; s2=1,3,2,7;语句printf(%d,s0.x*s1.x)的输出结果为 【 】 A) 14 B) 6 C) 2D) 215运行下列程序段,输出结果是 【 】 struct country int num; char name10; x5=1,China,2,USA,3,France,4, England,5, Spanish; struct country *p; p=x+2; printf(%d,%c,p-num,(*p).name2);A) 3,a B) 4,g C) 2,U D) 5,S6下面程序的运行结
3、果是【 】。struct KeyWordchar Key20;int ID;kw=void,1,char,2,int,3,float,4,double,5;main()printf(%c,%dn,kw3.Key0, kw3.ID);A) i,3B) n,3C) f,4D) l,47定义以下结构体类型struct studentchar name10;int score50;float average;stud1;则stud1占用内存的字节数是【 】。A) 64B) 114C) 228D) 78如果有下面的定义和赋值,则使用【 】不可以输出n中data的值。struct SNodeunsigne
4、d id;int data;n,*p;p=&n;A) p.dataB) n.dataC) p-dataD) (*p).data9.根据下面的定义,能输出Mary的语句是【】。struct person char name9;int age;struct person class5=John,17,Paul,19,Mary,18,Adam,16;A) printf(%sn,class1.name); B) printf(%sn,class2.name);C) printf(%sn,class3.name); D) printf(%sn,class0.name);10.定义以下结构体数组 stru
5、ct date int year; int month; int day; ; struct s struct date birthday; char name20; x4=2008, 10, 1, guangzhou, 2009, 12, 25, Tianjin;语句printf(%s,%d,%d,%d,x0.name,x1.birthday.year); 的输出结果为 【 】。A) guangzhou,2009 B) guangzhou,2008 C) Tianjin,2008 D) Tianjin,200911运行下列程序段,输出结果是【】。 struct country int num
6、; char name20; x5=1, China, 2, USA, 3, France, 4, England, 5, Spanish; struct country *p; p=x+2; printf(%d,%s,p-num,x0.name);A) 2,France B) 3,France C) 4,England D) 3, China12 定义以下结构体数组 struct int num; char name10; x3=1,china,2,USA,3,England;语句printf(n%d,%s,x1.num,x2.name)的输出结果为【 】A)2,USAB)3,England
7、 C)1,chinaD)2,England13 定义以下结构体数组 struct date int year; int month; ; struct s struct date birth; char name20; x4=2008,8,hangzhou,2009,3,Tianjin;语句printf(%c,%d,x1.name1,x1.birth.year);的输出结果为【 】A)a,2008B)hangzhou,2008C)i,2009D)Tianjin,200914 运行下列程序,输出结果是【 】struct contry int num; char name20;x5=1,China,2,USA,3,France,4,Englan,5,Spanish;main() int i; for (i=3;i5;i+) printf(%d%c,xi.num,xi.name0);A)3F4E5SB)4E5SC)F4ED)c2U3F4E专心-专注-专业