实验五 结构与联合实验
29页1、C 语言程序设计 实验报告专业 信息安全 班级 1103 日期 成绩 实验组别 第 1 次实验 指导教师 学生姓名 严志颖 学号 U201114113 同组人姓名 实验名称: 结构与联合实验1、实验目的1熟悉和掌握结构的说明和引用、结构的指针、结构数组、以及函数中使用结构的方法。2掌握动态储存分配函数的用法,掌握自引用结构,单向链表的创建、遍历、结点的增删、查找等操作。3了解字段结构和联合的用法。2、实验内容及要求1表达式求值的程序验证题设有说明:char u=UVWXYZ;char v=xyz;struct Tint x;char c;char *t;a=11,A,u,100, B,v,*p=a;请先自己计算下面表达式的值,然后通过编程计算来加以验证。(各表达式相互无关)序号 表达式 计算值 验证值1 (+p)-x2 p+,p-c3 *p+-t,*p-t4 *(+p)-t5 *+p-t6 +*p-t2源程序修改、替换下面所给源程序的功能是:给定一批整数,以 0 作为结束标志且不作为结点,将其建成一个先进先出的链表,先进先出链表的指头指针始终指向最先创建的结点(链头) ,先建结点指向后
2、建结点,后建结点始终是尾结点。请完成以下工作:(1) 源程序中存在什么样的错误(先观察执行结果)?对程序进行修改、调试,使之能够正确完成指定任务。(2) 修改替换 create_list 函数,将其建成一个后进先出的链表。后进先出链表的头指针始终指向最后创建的结点(链头) ,后建结点指向先建结点,先建结点始终是尾结点。源程序:#include stdio.h#include stdlib.hstruct s_list int data; /* 数据域 */struct s_list *next; /* 指针域 */ ;void create_list (struct s_list *headp,int *p);void main(void)struct s_list *head=NULL,*p;int s=1,2,3,4,5,6,7,8,0; /* 0 为结束标记 */create_list(head,s); /* 创建新链表 */p=head; /*遍历指针 p 指向链头 */while(p)printf(%dt,p-data); /* 输出数据域的值 */p=p-next; /*遍
3、历指针 p 指向下一结点 */printf(n);void create_list(struct s_list *headp,int *p)struct s_list * loc_head=NULL,*tail;if(p0=0) /* 相当于*p=0 */;else /* loc_head 指向动态分配的第一个结点 */loc_head=(struct s_list *)malloc(sizeof(struct s_list);loc_head-data=*p+; /* 对数据域赋值 */tail=loc_head; /* tail 指向第一个结点 */while(*p) /* tail 所指结点的指针域指向动态创建的结点 */tail-next=(struct s_list *)malloc(sizeof(struct s_list);tail=tail-next; /* tail 指向新创建的结点 */tail-data=*p+; /* 向新创建的结点的数据域赋值 */tail-next=NULL; /* 对指针域赋 NULL 值 */headp=loc_head; /* 使头指针
4、 headp 指向新创建的链表 */3.程序设计编写并上机调试运行能实现以下功能的程序或函数:(1)编写一个程序,实现以下功能:设计一个字段结构 struct bits,它将一个 8 位无符号字节从最低位向最高位声明为 8 个字段,各字段依次为 bit0, bit1, , bit7,且 bit0的优先级最高。同时设计 8 个函数,第 i 个函数以 biti(i=0,1,2,7)为参数,并且在函数体内输出 biti 的值。将 8 个函数的名字存入一个函数指针数组 p_fun。如果 bit0 为 1,调用 p_fun0指向的函数。如果 struct bits 中有多位为 1,则根据优先级从高到低依次调用函数指针数组 p_fun 中相应元素指向的函数。8 个函数中的第 0 个函数可以设计为:void f0(struct bits b)Printf(“the function %d is called!n”,b); (2)假设用单向链表建立一张班级成绩单,包括每个学生的学号、姓名、英语、高等数学、普通物理、C 语言程序设计四门课程的成绩。用函数编程实现下列功能:(1) 输入每个学生的各项信息。
《实验五 结构与联合实验》由会员油条分享,可在线阅读,更多相关《实验五 结构与联合实验》请在金锄头文库上搜索。
最新学校新冠肺炎疫情突发事件应急处置办法和流程
最新疫情防控期间学校用餐与食堂管理规定和师生一日流程图
最新Xx省xx区返学师生员工健康登记表
诊所简介
高中英语-第二单元-《the-United-Kingdom》课件-新必修5
新版新目标英语七年级下unit4--Don't-eat-in-class课件
新版PEP六年级英语unit6-how-do-you-feel-A-Let's-talk
安徽专版2018秋八年级英语上册Unit5Doyouwanttowatchagameshow第6课时习题课件新人教目标版
酸的和甜的教学课件.doc
Lesson-1-Where-do-we-go-from-here概要
Docker技术与实践
七年级英语下册-Unit-9-What-does-he-look-like(第3课时)(Grammar-Focus-3d)同步语法精讲精练课件-(新版
《I'm-going-to-do-the-high-jump》PPT课件3
高二英语外研版-必修5-Module-2-A-Job-Worth-Doing-Reading课件
英语片段教学-I-can-do-it
Adobe公司简介
安徽专版2018秋八年级英语上册Unit5Doyouwanttowatchagameshow第2课时习题课件新人教目标版
第二单元全课件Unit2-What-time-do-you-go-to-school-全课件
第18课-Windows的磁盘管理与安全
第12章--Windows-Server-2008路由及远程访问
2022-09-19 11页
2023-03-16 8页
2024-01-12 3页
2023-03-14 3页
2023-10-22 20页
2023-12-24 3页
2023-04-25 8页
2023-05-12 9页
2023-06-03 8页
2023-11-15 4页