1、数据的表示优质资料 (可以直接使用,可编辑 优质资料,欢迎下载) 6.3.1数据的表示 【学习目标】 1、知道扇形统计图的特点,会制作扇形统计图; 2、在扇形统计图中能从中获取信息。 【学习流程】 一、 知识链接:(扇形统计图的特点,会制作扇形统计图) 小强是校学生会体育部部长,他想了解现在同学们更喜欢什么球类运动,以便学生会组织受同学们欢迎的比赛。于是他设计了调查问卷,在全校每个班随机选取了10名同学进行调查,调查结果如下: 小组交流归纳,不书写(1)如果你是小强,你会组织什么比赛?,你是怎样判断的? (2)喜欢篮球运动的人数占调查总人数的百分比是多少?喜欢足
2、球运动的人数占调查总人数的百分比是多少?排球、乒乓球、羽毛球、其他球类运动的百分比呢?上述所有百分比之和是多少? (3)你能设法用扇形统计图表示上述结果吗? 整理归纳:1、扇形统计图反映的是; 2、在扇形统计图中,所有百分比之和是; 3、顶点在 的角叫圆心角.扇形统计图中,所有扇形圆心角的和为; 4、计算各个扇形的圆心角度数:圆心角度数=360°×; 5、在扇形统计图中,每部分占总体的百分比等于该部分所对应的扇形与360°的比。 动手做一做:根据上述小强的调查数据,可以按如下方法绘制扇形统计图。 (1)计算各选项人数占调查总人数的百分比,并填在下表中: 篮球 足
3、球 排球 乒乓球 羽毛球 其他 百分比 (2)计算各个扇形的圆心角度数: 篮球 足球 排球 乒乓球 羽毛球 其他 对应的圆心角度数 (3)在圆中画出扇形,并标上百分比。 二、能力提升:(在扇形统计图中获取信息解决问题) 1、观察下图,回答问题: (1)如果用整个圆表示总体,那么哪个扇形表示总体的25%? (2)如果用整个圆表示你们班的人数,那么扇形B大约代表多少人? (3)如果用整个圆表示9公顷稻田,那么扇形C大约代表多少公顷稻田?
4、 2、图示的是甲、乙两户居民家庭全年支出费用的扇形统计图,根据统计图,小明认为对全年食品支出费用乙户比甲户多,你同意他的看法吗?为什么? 3、想一想小明对在全班40名学生中进行了“你对哪些课程非常感兴趣”的调查,获得如下数据:语文20人,数学25人,英语18人,物理10人,计算机34人,其他12人.他想用扇形统计图表示这些数据,却发现6项的百分比之和大于1,为什么会这样呢? 4、作一作某班男女生人数比例如图(1)所示,如果用图(2)的正方形表示该班全体人数,你能在图(2)中直观地表示该班男女生人数的比例关系吗 【当堂检测】 小颖一天的时间安排统计图如图所示。 (
5、1)根据图中的数据制作扇形统计图,表示小颖一天的时间安排; (2)比较两幅统计图的不同。 【我要整理学案,我要总结】 课题:北师大版数学七年级上册49 《6.3.2数据的表示》导学案 小主人: 班级: 班 编号:49 本周习惯养成: 对子大比拼,组间大比拼 课型:预习+展示 课时:1课时 主备人:集 备 【学习目标】 1、能选择适当的方法整理和表示数据,能根据数据处理的结果获取信息并作出合理的判断和预测; 2、能在已经给出分组的情况下绘制频数直方图,知道频数直方图和条形统计图的关系。 【学习流程】 一、新知探究: 下表是某校七(2)班的
6、同学入学信息表:课本第168页下 (1)你能用恰当的统计图表示这个班同学入学时的英语成绩吗?从你的图表中能看出大部分同学处于哪个等级吗?成绩的整体分布情况怎样? (2)你能用恰当的统计图表示这个班入学时的语文成绩吗?从你的图表中能看出大部分同学处于哪个分数段吗?成绩的整体分布情况怎样? 对于(1),小明采取了表格的形式,小颖采用了条形统计图的形式:课本第169页中间 英语成绩 优 良 中 人数(频数) 对于(2),小明还想采用表格和统计图的方法,结果他觉得很复杂。 语文成绩 68 72 75 78 79 80 81 82 83 人 数
7、 1 1 1 2 1 2 2 2 3 语文成绩 85 86 87 88 89 90 91 92 94 人 数 1 4 1 2 1 1 3 1 1 请看课本第169页下的条形统计图: 这时他借鉴英语成绩的表示,将语文成绩按10分的距离分段,统计每个分数段的学生: 语文成绩 60-70 70-80 80-90 90-100 人数(频数) 请看课本第170页中间的条形统计图: 你能明白小明的做法吗?我们把上图的横轴略作调整,得到下图。 请看课本第170页下面的图 像这样的统计图称为频数直方图 总结
8、1)频数直方图是一种特殊的条形统计图,他将统计对象的数据进行了分组,画在,纵轴表示。(2)如果样本中数据较多,数据的差距也比较大时,频数直方图能更、更地反映数据的整体状况。 练习 1、某地区随即抽调一部分市民进行了一次法律知识测试,测试成绩(得分取整数)进行整理后分成五组,并绘制成频数直方图(如图)。(1)这次活动共抽取了多少人测试?(2)测试成绩的整体分布情况如何?(课本第171页习题6.4的第1题) 2、某同学调查了小区内50户人家当年10月份的家庭用水量,结果(单位:m3) 家庭用水量 家庭数(户) 9 12 11 8
9、5 1 2 2 请你根据上述信息,绘制相应的频数直方图。 【当堂检测】 【我要整理学案,我要总结】 用坐标表示平移 长江中学:朱玉萍 【教学重点与难点】 教学重点:掌握坐标变化与图形平移的关系. 教学难点:探索坐标变化与图形平移的关系. 【教学目标】 1. 掌握点的坐标变化与图形平移的关系;能利用点的平移规律将平面图形进行平移;会根据图形上点的坐标的变化,来判定图形的移动过程. 2. 经历探索点坐标变化与点平移的关系,图形各个点坐标变化与图形平移的关系的过程,发展学生的形象思维能力和数形结合意识。 【教学方法】 本节课从数的角度刻
10、画了第五章平移的内容,充分体现了数形结合的思想,在内容安排顺序上,先研究点的平移,再研究图形的平移,由简单到复杂,在内容的呈现方式上采取自主探究和总结归纳两种形式,体现了从特殊到一般的思维方式.课堂教学中在学生自主探究,合作交流的基础上教师适时的引导点拨. 【教学过程】 一、复习旧知,铺垫新知 (设计说明:复习平移的概念及性质,为探索新知识作铺垫,使得课程自然地过渡到新课题的学习中去.) 1.回顾 (1) 什么叫做平移? 把一个图形整体沿某一方向移动一定的距离,图形的这种移动,叫做平移。 (图形的平移建立在点平移的基础上,其整体平移往往通过某些特殊点的平移来解决。) (2) 平
11、移后得到的新图形与原图形有什么关系? 平移后图形的位置改变,形状、大小不变;新图形与原图形对应点的连线平行且相等. 2.复习练习 (1) 已知道三角形ABC, 平移三角形ABC使点A和点A’重合。 (2)把鱼向左平移6cm。(假设每小格是1cm) SHApE \* MERGEFORMAT (教学说明:从学生已有的数学知识出发,建立新旧知识之间的联系,有利于学生获得新的知识和技能.) 二、合作交流,探索新知, 1、探索点坐标变化与点平移的关系 (设计说明:通过画图操作、思考、交流等过程, 引导学生去探索、发现、归纳得出结论。) 问题1: (1)将点A(-2,-3)向右平移
12、5个单位长度, 得到点A1,坐标为_____;把点A向上平移4个单位长度,得到点A2,坐标为_____; (2)把点A(-2,-3)向左平移3个单位长度,得到点A3,坐标为_____;把点A向下平移2个单位长度,得到点A4,坐标为_____; (3)观察它们坐标的变化,你能从中发现什么规律吗?再找几个点,对它们进行平移,观察它们的坐标是否按你发现的规律变化? 规律: 在平面直角坐标系中,将点(x,y)向右(或左)平移a个单位长度,可以得到对应点(x+a,y)(或(x-a,y)); 将点(x,y)向上(或下)平移b个单位长度,可以得到对应点(x,y+b)(或(x,y-b))。
13、问题2:如图:如何平移点A(-2,1)得到点A’? 提示:可将点A ①先向右平移5个单位长度,再向下平移3个单位长度; ②先向下平移3个单位长度,再向右平移5个单位长度。 总结:点的斜向平移,可通过点的水平平移和垂直平移来完成。 (教学说明:问题1在教师的指导下,学生通过画图、操作、合作交流等实践活动,经历从特殊到一般,由具体到抽象的探索过程,最终探索出点左右平移和上下平移的坐标变化规律,这样,让学生在独立思考的基础上,参与对数学问题的讨论,锻炼学生的表达能力,培养学生的合作意识;问题2通过由浅到深,由简到繁的思考过程,加强训练,拓宽学生的思路,发展他们的想象、联想能力,同时,也为图
14、形的斜向平移埋下伏笔.) 2、探索图形各个点坐标变化与图形平移的关系 (设计说明:类比点的平移与坐标的关系的探究方法,探究图形的平移与坐标的关系) 问题1: 例题探索 如图,三角形ABC三个顶点的坐标A(4,3),B(3,1),C(1,2) (1)将三角形ABC三个顶点的横坐标都减去6,纵坐标不变, 有A1 ,B1 ,C1 。 猜想:三角形A1B1C1与三角形ABC的大小、形状和位置上有什么关系,为什么? 解:(联系前面所学知识,可知平面直角坐标系中图形的平移也可先通过平移图形上某些特殊点,再依次连接这些平移后的特殊点得到)因为图形的平移是以点的平移为基础的,因此所得三角形
15、A1B1C1与三角形ABC的大小、形状完全相同,可以看作将三角形ABC向左平移6个单位长度得到。 (2)将三角形ABC三个顶点的纵坐标都减去5,横坐标不变, 猜想:三角形A2B2C2与三角形ABC的大小、形状和位置上有什么关系? 解:所得三角形A2B2C2与三角形ABC的大小、形状完全相同,可以看作将三角形ABC向下平移5个单位长度得到。 问题2:(接例题) (1)将三角形ABC三个顶点的横坐标都加 3,纵坐标不变;纵坐标都加2,横坐标不变分别能得到什么结论? (2)将三角形ABC三个顶点的横坐标都减 6,纵坐标减5,又能得到什么结论? ② ① 总
16、结:图形的斜向平移,可通过水平平移和垂直平移来完成。 规律:在平面直角坐标系内,如果把一个图形各个点[*]的横坐标都加(或减去)一个正数a,相应的新图形就是把原图形向右(或向左)平移a个单位长度; 如果把它各个点的纵坐标都加(或减去)一个正数b,相应的新图形就是把原图形向上(或向下)平移b个单位长度。 [*]注:通常选取图形上某些特殊点来完成 (教学说明:学生掌握点的平移与其坐标的变化关系后,将知识迁移到几何图形的平移上来,而图形的平移是建立在点平移的基础上的,因此这一知识点可由学生自主探索完成。用坐标表示图形平移时,往往通过某些特殊点的平移来解决,加强了学生对知识点间相互联系的认识.
17、 三、巩固训练,熟练技能: (设计说明:通过不同的基础练习,帮助学生进一步理解本节课所学知识.) 1、练习 (1)将点A(5,-1)向上平移2个单位长度,得到点A1,坐标为_____; (2)将点A(5,-1)向左平移2个单位长度,得到点A2,坐标为_____; (3)将点A(5,-1)先向下平移3个单位长度,再向右平移2个单位长度得到点A3,坐标为_____; 2、将某图形各点的横坐标都减去2,纵坐标不变,可将该图形( ) A、向右平移2个单位长度 B、向左平移2个单位长度 C、向上平移2个单位长度 D、向下平移2个单位长度 3、将三角形ABC的各顶点的纵坐标分别加3,
18、横坐标不变,连接三个点所成的三角形A1B1C1是原三角形( ) A、向左平移3个单位得到的 B、向左平移3个单位得到的 C、向上平移3个单位得到的 D、向下平移3个单位得到的 4、将点A(x,y)的横坐标减2,纵坐标加3,得到B点坐标______;还可以看作点A先向_____平移_____个单位长度,再向_____平移_____个单位长度得到B点。 (教学说明:这一环节是为了评价本节课的教学效果,检验教学目标的达成情况,教师可根据学生反馈的具体情况作适当的评价与弥补,从而达到巩固提高的目的.) 四、总结反思,情意发展 (设计说明:围绕三个问题,师生共同总结本节课的学习收获。) 1
19、这节课你学到了什么知识? 2、在本节课的学习活动过程中,你有何体会? 3、你还有什么想法吗? (教学说明:师生进行合作小结,体现了教学的民主性,学生通过自我评价及形成性评价,逐渐形成正确的价值观和科学的学习观,同时也养成良好的反思习惯.) 五、课堂小结 1.本节主要学习了点(图形)平移后坐标的变化规律和坐标变化后图形的平移规律. 2.主要用到的思想方法是数形结合思想和转化思想。 3.注意的问题: 整体图形的平移转化为某些特殊点的平移 六、布置课后作业: 1、 课本53页练习 2、课本53页习题6.2的3、4、6题 (教学说明: 第3、4题是根据图形的平移写出平移后点的坐
20、标的题目,第3题要注意让学生体会图形做水平方向和竖直方向的平移时,对应点的横坐标与纵坐标的变化规律.第4题是对图形连续进行两次不同方向的平移,比第3题的平移复杂,因为是选择题所以降低了难度.第6题说明了在计算机上制作动画片时用到的图形平移可以用坐标来刻画.) 七、拓展练习 1、如图,三角形ABC是由三角形A1B1C1平移后得到的,三角形ABC中任意一点p(x,y)经平移后对应点为p1(x-3,y-5),求A1、B1、C1的坐标. 2、如图,一个机器人从O点出发,向正东方向走3米到达A1点,再向正北方向走6米到达A2点,再向正西方向走9米到达A3点,再向正南方向走12米到达A4点,再
21、向正东方向走15米到达A5点,按如此规律走下去,当机器人走到A6点时,A6点的坐标是________. 3.(创新题)在平面直角坐标系中,A(-3,4),B(-1,-2),O为原点,求三角形AOB的面积. 参考答案: 1.解:由题意知,三角形A1B1C1是由三角形ABC先向左平移3个单位长度,再向下平移5个单位长度得到的. 因为A(4,3),B(3,1),C(1,2) 所以A1(1,-2),B1(0,-4),C1(-2,-3). 2.解:以点O为原点,正东方向为x轴正方向,正北方向为y轴正方向,建立如图所示的平面直角坐标系,题中机器人运动的过程,实质上是坐标系中点的平
22、移过程,即A1(3,0)A2(3,6)A3(-6,6)A4(-6,-6)A5(9,-6)A6(9,12). 因此,在以O点为坐标原点,正北方向为y轴正方向的坐标系中,A6的坐标为(9,12). 3.解:如图,作AC⊥y轴,BD⊥y轴,垂足分别为C、D. ∵A(-3,4),B(-1,-2), ∴AC=3,BD=1,CD=6,OD=2 ∴S△AOB=S梯形ABCD-(S△OAC+S△OBD) =×(1+3)×6-(×3×4+×1×2)=5. 点拨:在平面直角坐标系中求几何图形的面积,通常采取向x轴或y轴作垂线,将几何图形割补的方法,同学们想一想,这是为什么? 【评价与反思】
23、本节课是在学生学习了位置平移的概念和性质的基础上进行的,主要是引导学生运用分类思想,依次经过点或图形平移的观察、画图、比较、推理、归纳等活动,最终探索出点的坐标变化与点平移的关系,图形各个点的坐标变化与图形平移的关系,体验坐标这种数的形式与平移这种图形的形式之间的相互联系. 本节课对教材的内容进行了优化处理,密切联系新旧知识,让学生借助已有的知识和方法主动探索新知识,扩大知识结构,发展能力,完善人格,从而使课堂教学真正落实到学生的发展上,体现了以教师为主导、学生为主体,以思想为导向、知识为载体,以方法为中介、训练为主干,以培养学生的思维能力为中心的教学理念。通过设置以上教学情景,引导学生探索
24、实践、观察、猜想,最终得出结论,符合教育心理学指出的“感觉——知觉——记忆——思维——想象”的认知规律。
#include
25、指针域 }LNode, *LinkList; // typedef struct LNode *LinkList; // 另一种定义LinkList的方法 // 构造一个空的线性表L int InitList(LinkList *L) { /* 产生头结点L,并使L指向此头结点,头节点的数据域为空,不放数据的。 void * malloc(size_t) 这里对返回值进行强制类型转换了,返回值是指向空类型的指针类型。 */ (*L) = (LinkList)malloc( sizeof(struct LNode) ); if( !(*
26、L) ) exit(0); // 存储分配失败 (*L)->next = NULL; // 指针域为空 return 1; } // 销毁线性表L,将包括头结点在内的所有元素释放其存储空间。 int DestroyList(LinkList *L) { LinkList q; // 由于单链表的每一个元素是单独分配的,所以要一个一个的进行释放 while( *L ) { q = (*L)->next; free( *L ); //释放 *L = q; } return 1; } /* 将L重置为
27、空表,即将链表中除头结点外的所有元素释放其存 储空间,但是将头结点指针域置空,这和销毁有区别哦。不改变L,所以 不需要用指针。 */ int ClearList( LinkList L ) { LinkList p, q; p = L->next; // p指向第一个结点 while( p ) // 没到表尾则继续循环 { q = p->next; free( p ); //释放空间 p = q; } L->next = NULL; // 头结点指针域为空,链表成了一个空表 return 1; } // 若
28、L为空表(根据头结点L->next来判断,为空则是空表),则返回1, // 否则返回0。 int ListEmpty(LinkList L) { if( L->next ) // 非空 return 0; else return 1; } // 返回L中数据元素个数。 int ListLength(LinkList L) { int i = 0; LinkList p = L->next; // p指向第一个结点 while(p) // 没到表尾,则继续循环 { i++; p=p->next; } re
29、turn i; } // 算法2.8 P29 // L为带头结点的单链表的头指针。当第i个元素存在时,其值赋给e并 // 返回1,否则返回0。 int GetElem(LinkList L,int i,ElemType *e) { int j = 1; // j为计数器 LinkList p=L->next; // p指向第一个结点 while(p&&jnext; j++; } if(!p||j>i) // 第i个元素不存在 return 0
30、 *e = p->data; // 取第i个元素 return 1; } // 返回L中第1个与e满足关系compare()的数据元素的位序。 // 若这样的数据元素不存在,则返回值为0 int LocateElem(LinkList L,ElemType e,int(*compare)(ElemType,ElemType)) { int i=0; LinkList p=L->next; while(p) //将链表的每一个元素进行对比 { i++; if(compare(p->data,e)) // 找到这样的数据元素 r
31、eturn i; p=p->next; } return 0; } // 若cur_e是L的数据元素,且不是第一个,则用pre_e返回它的前驱, // 返回1;否则操作失败,pre_e无定义,返回-1 int PriorElem(LinkList L,ElemType cur_e,ElemType *pre_e) { LinkList q, p=L->next; // p指向第一个结点 while(p->next) // p所指结点有后继 { q=p->next; // q为p的后继 if(q->data==cur_e)
32、 { *pre_e=p->data; return 1; } p=q; // p向后移 } return -1; } // 若cur_e是L的数据元素,且不是最后一个,则用next_e返回它的后继, // 返回1;否则操作失败,next_e无定义,返回-1 int NextElem(LinkList L,ElemType cur_e,ElemType *next_e) { LinkList p=L->next; // p指向第一个结点 while(p->next) // p所指结点有后继 { if(p->data
33、cur_e)
{
*next_e=p->next->data;
return 1;
}
p=p->next;
}
return -1;
}
// 算法2.9 P30
// 在带头结点的单链线性表L中第i个位置之前插入元素e
int ListInsert(LinkList *L,int i,ElemType e)
{
int j=0;
LinkList p=*L,s;
while(p && j
34、 // i小于1或者大于表长 return 0; s=(LinkList)malloc(sizeof(struct LNode)); // 生成新结点 s->data=e; // 插入L中 s->next=p->next; p->next=s; return 1; } // 算法2.10 P30 // 在带头结点的单链线性表L中,删除第i个元素,并由e返回其值 int ListDelete(LinkList *L, int i,ElemType *e) { int j = 0; LinkList p=*L,q; while(p->next
35、j
36、元素调用函数vi while(p) { vi(p->data); p=p->next; } printf("\n"); return 1; } // 在按非降序排列的线性表L中按非降序插入新的数据元素e void InsertAscend(LinkList L,ElemType e) { LinkList q=L, p=L->next; while(p&&e>p->data) { q=p; p=p->next; } q->next=(LinkList)malloc(sizeof(struct LN
37、ode)); // e插在q后
q->next->data=e;
q->next->next=p;
}
// 按非升序排列的线性表L中按非升序插入新的数据元素e
void InsertDescend(LinkList L,ElemType e)
{
LinkList q=L,p=L->next;
while(p&&e
38、next->next=p; } // L的头部插入新的数据元素e,作为链表的第一个元素 int HeadInsert(LinkList L,ElemType e) { LinkList s; s=(LinkList)malloc(sizeof(struct LNode)); // 生成新结点 s->data=e; // 给结点赋值 s->next=L->next; // 插在表头 L->next=s; return 1; } // 在L的尾部插入新的数据元素e,作为链表的最后一个元素 int EndInsert(LinkList L,El
39、emType e) { LinkList p=L; while(p->next) // 使p指向表尾元素 p=p->next; p->next=(LinkList)malloc(sizeof(struct LNode)); // 在表尾生成新结点 p->next->data=e; // 给新结点赋值 p->next->next=NULL; // 表尾 return 1; } // 删除L的第一个数据元素,并由e返回其值 int DeleteFirst(LinkList L,ElemType *e) { LinkList p=L->ne
40、xt; if(p) { *e=p->data; L->next=p->next; free(p); return 1; } else return 0; } // 删除L的最后一个数据元素,并用e返回其值 int DeleteTail(LinkList L,ElemType *e) { LinkList p=L,q; if(!p->next) // 链表为空 return 0; while(p->next) { q=p; p=p->next; } q->next=NULL; // 新尾结点的n
41、ext域设为NULL *e=p->data; free(p); return 1; } // 删除表中值为e的元素,并返回1;如无此元素,则返回0 int DeleteElem(LinkList L,ElemType e) { LinkList p=L,q; while(p) { q=p->next; if(q&&q->data==e) { p->next=q->next; free(q); return 1; } p=q; } return 0; } // 用e取代表L中第i个元素的
42、值 int ReplaceElem(LinkList L,int i,ElemType e) { LinkList p=L; int j=0; //找到第i个元素的位置给p while(p->next && jnext; } if(j==i) { p->data=e; return 1; } else // 表中不存在第i个元素 return 0; } // 按非降序建立n个元素的线性表 int CreatAscend(LinkList *L,int n) { int
43、 j;
LinkList p,q,s;
if(n<=0)
return 0;
InitList(L);
printf("请输入%d个元素:(空格)\n",n);
s=(LinkList)malloc(sizeof(struct LNode)); // 第一个结点
scanf("%d",&s->data);
s->next=NULL;
(*L)->next=s;
for(j=1;j
44、a);
q=*L;
p=(*L)->next;
while(p&&p->data
45、
InitList(L);
printf("请输入%d个元素:(空格)\n",n);
s=(LinkList)malloc(sizeof(struct LNode)); // 第一个结点
scanf("%d",&s->data);
s->next=NULL;
(*L)->next=s;
for(j=1;j
46、>data>s->data) // p没到表尾,且所指元素值大于新值 { q=p; p=p->next; // 指针后移 } s->next=q->next; // 元素插在q的后面 q->next=s; } return 1; } // 返回表头元素的值 int GetFirstElem(LinkList L,ElemType *e) { LinkList p=L->next; //第一个结点给p if(!p) // 空表 return 0; else // 非空表 *e=p->data; re
47、turn 1; } // 算法2.11 P30 // 逆位序(插在表头)输入n个元素的值,建立带表头结构的单链线性表L void CreateList(LinkList *L,int n) { int i; LinkList p; // 先建立一个带头结点的空单链表,相当于初始化单链表 *L=(LinkList)malloc(sizeof(struct LNode)); (*L)->next=NULL; printf("请输入%d个数据\n",n); for(i=n;i>0;--i) { p=(LinkList)malloc
48、sizeof(struct LNode)); // 生成新结点 scanf("%d",&p->data); // 输入元素值 p->next=(*L)->next; // 插入到表头 (*L)->next=p; } } // 正位序(插在表尾)输入n个元素的值,建立带表头结构的单链线性表 void CreateList2(LinkList *L,int n) { int i; LinkList p,q; // 先建立一个带头结点的空单链表,相当于初始化单链表 *L=(LinkList)malloc(sizeof(struct L
49、Node)); // 生成头结点 (*L)->next=NULL; q=*L; printf("请输入%d个数据\n",n); for(i=1;i<=n;i++) { p=(LinkList)malloc(sizeof(struct LNode)); scanf("%d",&p->data); q->next=p; q=q->next; } p->next=NULL; } /* 用单链表重写 算法2.2 供参考 已知线性表La和Lb中的数据元素按值非递减排列。 归并La和Lb得到新的线性表Lc,Lc的数据元
50、素也按值非递减排列 void MergeList(LinkList La,LinkList Lb,LinkList *Lc) { int i=1,j=1,k=0; int La_len,Lb_len; ElemType ai,bj; InitList(Lc); La_len=ListLength(La); Lb_len=ListLength(Lb); while(i<=La_len&&j<=Lb_len) // 表La和表Lb均非空 { GetElem(La,i,&ai); GetElem(Lb,j,&bj); if(ai<=bj)






