C语言上机作业12 答案.doc_第1页
C语言上机作业12 答案.doc_第2页
C语言上机作业12 答案.doc_第3页
C语言上机作业12 答案.doc_第4页
C语言上机作业12 答案.doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C语言程序设计上机作业12答案结构体与共用体上机作业答案1. 答案:【1】10 【2】42. 答案:343. 答案:【1】(*b).day 【2】b-day4. 答案:【1】struct link *next5. 答案:【1】struct list *next 【2】int data6. 答案:【1】struct 【2】ch 【3】NULL7. 答案:177771,1777778. 答案:605019. 答案:4,810. 答案:2 511. 答案:1312. 答案:2013. 答案:1814. 答案:A15. 答案:DDBBCCC语言程序设计上机作业12结构体与共用体上机作业要求:把下列各题填空。直接把答案填写在相应的位置,然后保存此word文件,上传。1 有以下定义和语句,则sizeof(a)的值是【1】,而sizeof(a.share)的值是【2】。struct date int day;int month;int year;union int share1;float share2;share; a;2若有以下说明和定义语句,则变量w在内存中所占字节数_。union aa float x,y;char c6;struct st union aa v;float w5;double ave; w;3有以下说明定义语句,可用a.day引用结构体成员day,请写出引用结构体成员a.day的其它两种形式【 1 】 【 2 】。 int day;char mouth;int year; a,*b;b=&a;4为了建立如图所示的存储结构(即每个结点含两个域,data是数据域,next是指向该结构的指针域,data用以存放整型数)请填空。 datanext struct link char data;( 【 1 】 )node;Sp data next5变量root有如图所示的存储结构,其中sp是指向字符串的指针的指针域,next是指向该结构的指针域,data用以存放整型数。请填空,完成此结构的类型说明和变量root的定义。 rootstruct list char *sp;(【1】)(【2】)root;6以下函数creatlist用来建立一带头节点的单链表,链表的结构如下图所示,新的节点总是插入在链表的末尾。链表的头指针作为函数值返回。链表最后一个节点的next域放入NULL,作为链表结束的标志。data为字符型数据域,next为指针域。读入时字符以#表示输入结束(不存入链表)。请填空。 0 h struct node char data;struct node *next;(【1】)creatlist() struct node *h,*s,*r;char ch;h=(struct node *)malloc(sizeof(struct node);r=h;ch=getchar();while (ch!=#) s=(struct node*)malloc(sizeof(struct node);s-data=(【2】);r-next=s.r;r=s;ch=getchar();r-next=(【3】);return h;7. 下列程序的执行结果为_。main() union bt int k;char c2;a;a.k=-7;printf(%o,%on,a.c0,a.c1);8. 若有以下的说明、定义和语句,则输出结果为_(已知字母A的十进制数为65)。main() union un int a;char c2; w;w.c0=A;w.c1=a;printf(%on,w.a);9. 程序运行的结果是_。main() union EXAMPLE struct int x;int y;in;int a;int b;e;e.a=1;e.b=2;e.in.x=e.a*e.b;e.in.y=e.a+e.b;printf(%d,%dn,e.in.x,e.in.y);10. 下面程序的输出结果是_。struct ks int a;int *b;main() struct ks s4,*p;int n=1,i;for(i=0;ib),*(s+2)-b);11. 下面程序的输出结果是_。#includeunion pw int i;char ch2; a;main() a.ch0=13;a.ch1=0;printf(%dn,a.i);12. 若有以下的说明和语句,已知int类型占两个字节,则以下的输出结果为_。main() struct st char a10;int b;double c;printf(%dn,sizeof(struct st);13. 若有以下的说明和语句,已知int类型占两个字节,则以下的输出结果为_。main() union un int i;double y;struct st char a10;union un b;printf(%dn,sizeof(struct st);14. 程序运行的结果是_。#include#define INT 1#define FLOAT 2#define CHAR 3main() int vtype;union val int x;char c;float y; v;v.x=100;vtype=INT;v.y=23.70;vtype=FLOAT;v.c=A;vtype=CHAR;if (vtype=INT) printf (%dn,v.x);else if (vtype=CHAR)printf(%cn,v.c);else if(vtype

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论