C语言第七章选择题.pdf

上传人:s****u 文档编号:12791600 上传时间:2020-05-24 格式:PDF 页数:12 大小:105.32KB
返回 下载 相关 举报
C语言第七章选择题.pdf_第1页
第1页 / 共12页
C语言第七章选择题.pdf_第2页
第2页 / 共12页
C语言第七章选择题.pdf_第3页
第3页 / 共12页
点击查看更多>>
资源描述
C语言选择题库 汕头大学许创编辑 第七章 结构体与共用体 701下列描述说明正确的是 A) 只有外部存储类型的结构体变量可以进行初始化。 B) 只有静态存储类型的结构体变量可以进行初始化。 C) 外部存储类型和静态存储类型的结构体变量都可以进行初始化。 D) 以上描述均不正确。 702以下正确的说法是 A) 结构体类型变量不能初始化。 B) 结构体类型变量为外部变量或静态变量时能初始化。 C) 结构体数组不能初始化。 D) 可以用赋值语句将一组常量赋给一个结构体变量。 703结构体类型变量在程序执行期间, A) 所有成员一直驻留在内存中。 B) 只有一个成员驻留在内存中。 C) 部分成员驻留在内存中。 D) 没有成员驻留在内存中。 704设有以下说明语句 struct stu int a; float b; stutype; 则下面不正确的叙述是 A) struct 是结构体类型的关键字。 B) struct stu是用户定义的结构体类型。 C) stutype是用户定义的结构体类型名。 D) a和b都是结构体成员名。 705下列说法不正确的是 A) 下列结构体定义时,占据了5个字节的空间。 struct s int num; int age; char sex; B) 结构体的成员名可以与程序中的变量名相同。 C) 对结构体中的成员可以单独使用,它的作用相当于普通变量。 D) 结构体的成员可以是一个结构体变量。 706下列描述说明正确的是 A) 对于一个具体的结构体,它的成员可以根据自己的需要随时更改。 B) 结构体与数组一样,其每个成员的数据类型都相同。 C) 结构体的每个成员的数据类型必须是基本数据类型。 D) 以上描述均不正确。 C语言选择题库 汕头大学许创编辑 707下列描述说明正确的是 A) 定义结构体时,它的每个成员的数据类型可以不同。 B) 不同结构体的成员名不能相同。 C) 结构体定义时,其成员的数据类型不能是结构体本身。 D) 结构体定义时各成员项之间可用分号也可用逗号隔开。 708下列描述说明正确的是 A) 定义结构体时,系统按照各成员项的大小分配相应的存储空间。 B) 定义结构体时,系统按照各成员项中占用空间最大的成员项分配存储空间。 C) 结构体定义时,结构体本身并不占用存储空间,即系统并不给结构体分配存储空间。 D) 以上说法均不正确。 709下列描述说明正确的是 A) 结构体变量说明时,系统按照结构体定义时所需空间的大小实际分配存储空间。 B) 结构体变量说明时,系统按照各成员项中占用空间最大的成员项分配存储空间。 C) 结构体变量说明时,系统并不给结构体分配存储空间。 D) 以上说法均不正确。 710下列描述说明正确的是 A) 结构体变量可以作为一个整体进行其值的输入和输出。 B) 结构体成员项不可以是结构体。 C) 结构体成员项可以是结构体或其他任何C语言的数据类型。 D) 结构体变量和结构体是相同的概念。 711在微机上使用turbo C,若有如下定义: struct data int i; char c; double f; b; 则结构变量b占用内存的字节数是 A) 1 B) 2 C) 7 D) 11 712下面程序的运行结果是 main( ) struct long a; int b; char c; m; printf(%dn, sizeof(m); C语言选择题库 汕头大学许创编辑 A) 7 B) 4 C) 6 D) 8 713设有如下定义: struct st int a; float b; st1, *pst; 若有pst=,则对st1中的a域的正确引用是 A) (*pst).st1.a B) (*pst).a C) pst-st1.a D) pst.st1.a 714若有以下定义: struct stru int a; long b; char c6; sampl; 则以下赋值正确的是 A) sampl.c= abcd; B) strcpy(sampl.c, abcd); C) sampl-c= abcd; D) 以上均不正确 715以下程序的输出结果是 main() struct struint a; long b; char c6; ; printf(%dn, sizeof(struct stru); A) 2 B) 4 C) 6 D) 12 716以下程序的输出结果是 main() struct cmplxint x; int y; cnum2=1,3,2,7; printf(%dn, cnum0.y/cnum0.x*cnum1.x); C语言选择题库 汕头大学许创编辑 A) 0 B) 1 C) 3 D) 6 717下列程序的输出结果是 struct abc int a, b, c; ; main( ) struct abc s2=1,2,3,4,5,6; int t; t=s0.a+s1.b; printf(%dn, t); A) 5 B) 6 C) 7 D) 8 718若有以下说明,则下列表达式中值为20的是 struct sampl int a; int b; struct sampl test3=1,10,2,20,3,30, *p=test; A) (p+)-b B) (p+)-a C) (*+p).b D) (*+p).a 719若有以下定义和语句: struct student int age; int num; ; struct student stu3=20,1001,19,1002,21,1003; main() struct student *p; p=stu; 则以下不正确的引用是 A) (p+)-num B) p+ C语言选择题库 汕头大学许创编辑 C) (*p).num D) p= int *y; *p; int dt4=10,20,30,40; struct st aa4=50, main( ) p=aa; printf(%dn,+p-x); printf(%dn,(+p)-x); A) 10 20 B) 50 60 C) 51 60 D) 60 70 721有以下结构体说明和变量的定义,且如下图所示指针p指向变量a,指针q指向变量b。 则不能把结点b连接到结点a之后的语句是 struct node char data; struct node *next; a, b, *p= data next data next a 5 b 9 0 p q A) a.next=q; B) p.next= C) p-next= D) (*p).next=q; 722若已建立了下面的链表结构,指针p、s分别指向图中所示的结点,则不能将s所指的 C语言选择题库 汕头大学许创编辑 结点插入到链表末尾的语句组是 data next data next head E F NULL G p s A) s-next=NULL; p=p-next; p-next=s; B) p=p-next; s-next=p-next; p-next=s; C) p=p-next; s-next=p; p-next=s; D) p=(*p).next; (*s).next=(*p).next; (*p).next=s; 723以下程序的输出结果是 #include int a33=1, 2, 3, 4, 5, 6, 7, 8, 9, *p; main( ) p=(int*)malloc(sizeof(int); f(p, a); printf(%dn, *p); f(int *s, int p 3) *s=p11; A) 1 B) 4 C) 7 D) 5 724若有说明:long *p, a;则不能通过scanf语句正确给输入项读入数据的程序段是 A) *p= scanf(%ld, p); B) p=(long *)malloc(8); scanf(%ld, p); C) scanf(%ld, p= D) scanf(%ld, 725*以下程序的输出结果是 fut(int *s, int p23) *s=p11; main() int a23=1,3,5,7,9,11, *p; p=(int *)malloc(sizeof(int); fut( printf(%dn, *p); C语言选择题库 汕头大学许创编辑 A) 1 B) 7 C) 9 D) 11 726若要用下面的程序程序片段使指针变量p指向一个存储整型变量的动态存储单元: int *p; p=_malloc(sizeof(int); 则应填入 A) int B) int * C) (*int) D) (int *) 727*字符0的ASCII的十进制数为48,且数组的第0个元素在低位,则以下程序的输出 结果是 #include main() union int i2; long k; char c4; r, *s= s-i0=0 x39; s-i1=0 x38; printf(%cn, s-c0); A) 39 B) 9 C) 38 D) 8 728下列描述说明正确的是 A) 共用体定义时,系统按照各成员项所需空间的大小和实际分配存储空间。 B) 结构体定义时并不分配存储空间,只有在结构体变量说明时系统才分配存储空间。 C) 共用体定义时,系统按照占用空间最大的成员项分配存储空间。 D) 以上说法均不正确。 729以下程序的输出结果是 #include main() unionint i2; long k; char c4; r, *s= C语言选择题库 汕头大学许创编辑 s-i0=0 x39; s-i1=0 x38; printf(%cn, s-c0); A) 39 B) 9 C) 38 D) 8 730在微机上使用turbo C,若有如下定义: union data int i; char c; double f; b; 则共用体变量b占用内存的字节数是 A) 2 B) 1 C) 11 D) 8 731*执行下列程序的输出结果是 #include union pw int i; char ch2; a; main( ) a.ch0=13; a.ch1=0; printf(%dn,a,i); /* 注意:ch0在低字节,ch1在高字节 */ A) 13 B) 14 C) 208 D) 209 732变量a所占内存字节数是 union U C语言选择题库 汕头大学许创编辑 char st4; int i; long l; ; struct A int c; union U u; a; A) 4 B) 5 C) 6 D) 8 733*以下程序的输出结果是 #include main() unionint i2; long k; char c2; r, *s= s-k=0 x12345678; printf(%xn, s-c0); A) 12 B) 78 C) 1234 D) 5678 734以下程序的输出结果是 #include main() union un int a2; long b; char c; ; printf(%dn, sizeof(union un); 则下列语句的执行结果是 A) 9 B) 4 C) 1 D) 8 735*以下程序的输出结果是 C语言选择题库 汕头大学许创编辑 #include main() unionint i2; long k; char c4; r, *s= s-i0=0 x39; s-i1=0 x38; printf(%lxn, s-k); A) 390038 B) 380039 C) 3938 D) 3839 736*设有如下枚举型定义: enum language Basic=3,Assembly,Ada,COBOL,Fortran; 枚举量Fortran的值为 A) 103 B) 102 C) 4 D) 7 737*以下正确的说法是 A)结构体类型变量不能初始化 。 B)枚举类型的值不能直接输出。 C)枚举类型的值可以是数字。 D)共用体变量的不同成员可以使用不同的地址。 738*若有如下枚举类型及变量的定义和赋值语句: enum abc aa, bb, cc a,b,c; a=bb; 则执行printf(%d, a); 后的输出结果为: A) 2 B) 1 C) bb D) bb 739设有以下说明语句 typedef struct int a; float b; STUTYPE; C语言选择题库 汕头大学许创编辑 则下面不正确的叙述是 A) struct 是结构体类型的关键字。 B) STUTYPE是用户定义的结构体类型名。 C) STUTYPE是用户定义的结构体变量名。 D) a和b都是结构体成员名。 740下列描述正确的是 A) 用户可以通过类型定义产生一种新的数据类型。 B) 类型定义格式要求中的标识符必须是大写字母序列。 C) 类型定义格式要求中的类型名必须是在此之前有定义的类型标识符。 D) 以上描述均不正确。 741下列描述说明正确的是 A) typedef int INTEGER; INTEGER j, k; B) typedef int char; char j, k; C) typedef a3 ARRAY; ARRAY b; D) 以上描述均不正确 742以下选项中,能定义s为合法的结构体变量的是 A) typedef struct abc double a; char b10; s; B) struct double a; char b10; s; C) struct ABC double a; char b10; ; ABC s; D) typedef ABC double a;har b10; ; ABC s; 743以下程序的输出结果是 typedef union long i; int k5; char c; DATE; struct date int cat; DATE cow; double dog; too; DATE max; 则下列语句的执行结果是 printf(%dn, sizeof(struct date)+sizeof(max); A) 25 B) 30 C) 18 D) 8 744以下程序的运行结果是 C语言选择题库 汕头大学许创编辑 typedef unionlong a2; float b4; char c8; mytype; mytype our; main() printf(%dn, sizeof(our); A) 20 B) 16 C) 8 D) 24 745下列描述说明正确的是 A) 结构体变量的名称为该结构体变量的存储首地址。 B) 结构体数组的名称为该结构体数组的存储首地址。 C) 结构体变量本身的地址即各成员项存储空间的开始地址。 D) 结构体数组中不同元素的同名成员项具有相同的数据类型。
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 考试试卷


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!