C程序设计实例教程.ppt

  1. 1、本文档共484页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C程序设计实例教程

《C程序设计实例教程》 * 三、单链表的基本操作 1. 建立空链表 在链表中存在一个“头节点”,也就是指向目标链表首个节点的一个指针,在建立链表之前应该先定义这个指针并为其赋值。 2. 显示链表 对于链表的输出,应从头指针开始,依次遍历链表的每个节点,直到链表结尾(空指针)。 3. 添加节点 对链表按顺序添加新的节点时,根据该节点与头指针之间的位置关系,一般有头插法和尾插法两种形式。 《C程序设计实例教程》 * (1)头插法 (2)尾插法 《C程序设计实例教程》 * 4. 查找节点 (1)按序号查找:采用从头节点开始逐个遍历的方式,并在遍历过程中记录已经遍历的个数,直到遍历个数符合要求为止。 (2)按值查找 :按值查找是是自链表的头节点开始,依次判断节点数据域的某项数值与给定值是否相同 5. 插入节点 (1)后插法 《C程序设计实例教程》 * (2)前插法 6. 删除节点 《C程序设计实例教程》 * 7. 节点排序 方法:主要有冒泡排序、直接选择排序等 举例: 以下是按姓名方式对链表的各节点进行升序排序。 《C程序设计实例教程》 * comlist *sortbyname(comlist *h) { comlist *p1=h,*p2,*p; while(p1->next!=NULL) { p=p1; p2=p1->next; while(p2!=NULL) { if(strcmp(p->name,p2->name)>0) p=p2; p2=p2->next; } if(p!=p1) { exchangenode(p,p1); printf("OK\n"); } p1=p1->next; } return(h); } 《C程序设计实例教程》 * 第七章 编译预处理 掌握:带参的宏和不带参的宏的定义和使用方法 掌握:编译预处理命令的含义及其与其他命令的区别 了解:条件编译 重点:宏的定义和使用 难点:带参宏的定义和使用,条件编译 《C程序设计实例教程》 * §7.1 宏 定 义 何为预处理? 定义:是指在进行编译的第一遍扫描(词法扫描和语法分析)之前所做的工作。 何谓为宏定义? 定义:是将一个标识符定义为一个字符串,在编译之前将程序出现的该标识符用字符串替换,所以又称为宏替换。 宏定义分类: 一、无参宏定义 定义: 无参宏的宏名后不带参数。 形式: #define 标识符 字符串 例如: #define M (y*y+3*y) 《C程序设计实例教程》 * 几点说明: (1)宏定义是用宏名来表示一个字符串,在宏展开时又以该字符串取代宏名。 (2)宏定义不是说明或语句,在行末不必加分号,如加上分号则连分号也一起置换。 (3)宏定义必须写在函数之外,其作用域为从宏定义命令起到源程序结束。如要终止其作用域可使用# undef命令。 【例7.1】undef终止宏的作用 #define PI 3.14159 void main() { …… } # undef PI f1() { .... } 《C程序设计实例教程》 * (4)宏名在源程序中若用引号括起来,则预处理程序不对其作宏代换 . (5)宏定义允许嵌套,在宏定义的字符串中可以使用已经定义的宏名,在宏展开时由预处理程序层层代换。 (6)习惯上宏名用大写字母表示,以便于与变量区别,但也允许用小写字母。 (7)可用宏定义表示数据类型,使书写方便。 《C程序设计实例教程》 * 二、带参宏定义 定义:带参数的宏定义扩充了无参宏定义的功能,在字符串替换的同时还进行参数的替换 。 形式:#define 标识符(形参表)字符串 【例7.6】带参宏的定义和使用。 #include "stdio.h" #define SQ(y) ((y)*(y)) void main() { int i=1; while(i<=5) printf("%d\n",SQ(i++)); } 《C程序设计实例教程》 * 7.2 文件包含 文件包含 定义:是指一个源文件可以将另外一个指定的源文件的内容包含进来。 形式为: #include "文件名" 或 #include <文件名> 注意问题 : (1)包含命令中的文件名可以用双引号括起来,也可以尖括号括起来。如:#include“stdio.h”或 #include<math.h> (2)一个inc

您可能关注的文档

文档评论(0)

lifupingb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档

相关课程推荐