实用简单的C语言编程课件10第十章指针实例.ppt

实用简单的C语言编程课件10第十章指针实例.ppt

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

第十章 综合设计实例 掌握:复杂程序的分析和结构化设计方法 掌握:链表在综合程序设计中的应用 掌握:字模转换的方法 了解:C语言计算机绘图方法 了解:图形菜单设计方法 重点:复杂程序的分析及结构化设计方法、字模转换方法 难点:图形菜单的设计、字模转换方法 §10.1 万年历设计 一、功能要求 (1)只显示指定月份的阳历和星期; (2)初始运行时显示当年当月的日历; (3)根据用户输入的年、月数值自动输出对应的日历; (4)当用户输入的年、月数值为0时退出程序; (5)在文本模式下输出日历。 二、算法分析 分析过程: 首先计算目标日期与参考日期之间的总天数,计算过程中将会用到对闰年和平年的判断;然后用得到的总天数除以7取余数并将该余数与2相加,然后再除以7取余数。经过这两个步骤,就可以确定目标日期是星期几,一旦获得这一结果,即可用循环的方法输出该月的日历内容。 §9.2 文件类型指针 三、TC2.0工程设计 建立工程文件方法步骤: (1)在TC环境下编写各个文件代码,然后分别保存为不同的文件名。如main.c、show.c; (2)在TC环境下新建文件,按照工程文件的执行顺序,写入上述文件名称,如文件不在TC工作目录下,应写明文件的路径,然后保存为*.prj工程文件。 (3)在TC环境下打开Project菜单,在project name栏中写入刚才建立的工程名。 (4)编译该工程文件,若没有错误信息,则运行编译连接后的EXE执行文件。 四、函数介绍 (1)函数原型:int isleapyear(int year)。 功能:用于判断某年是否为闰年; 参数:year表示要判断的年份数值; 返回值:当判断结果为闰年时返回值为1,否则返回值为0。 (2)函数原型:void showcalender(int y,int m)。 功能:用于在文本模式下输出指定年月的日历; 参数:y表示要输出日历的年份,m表示要输出日历的月份; 返回值:无。 (3)函数原型:void getdate(struct date *datep)。 功能:用于获取计算机系统当期日期; 参数:datep是date结构体类型,用于存储得到的日期内容; 返回值:无。 四、参考程序 §10.2 简单通讯录设计 一、功能要求 1. 数据文件 2. 记录的操作 3. 数据的存储和读取 4. 菜单设计 二、总体设计 规划如下系统功能: (1)添加记录:在原有记录的基础上添加新的记录; (2)删除记录:根据用户输入的信息确定是否存在指定记录,经用户同意方可删除; (3)查找记录:根据用户输入的信息在记录集中查找,若找到则输出记录信息,若找不到,则输出提示信息; (4)修改记录:根据用户输入的信息修改通讯录指定成员的有关信息; (5)保存数据:将当前记录集的内容保存到数据文件中; (6)读取数据:程序运行时首先将数据文件的内容读取到有关结构中。 三、存储结构 方式:由于通讯录成员的信息内容由姓名、邮箱、电话等内容组成,可以采用结构体的方式进行表示 结构体定义如下: struct address{ char name[20]; //姓名 char mail[20]; //邮箱 char tel[20]; //电话 struct address *next; //指向下一节点的指针 } 四、函数设计 (1)函数原型:struct address *addnew(char *name,char *email,char *phone); 功能:向链表中添加一条记录; 参数:name表示姓名,email表示邮箱,phone表示电话号码; 返回值:返回指向链表头结点的指针。 (2)函数原型:struct address *delrec(char *name); 功能:按姓名方式删除一条记录; 参数:name表示要删除记录的姓名; 返回值:返回指向链表头节点的指针。 (3)函数原型:struct address *modifyrec(char *name,char *email,char *phone) 功能:按姓名方式更改链表指定节点的邮箱和电话号码; 参数:name表示姓名,email表示邮箱,phone表示电话号码; 返回值:返回指向链表头结点的指针。 (4)函数原型:void printrec(struct address *p); 功能:顺序显示链表中各记录的内容; 参数:p是指向链表头结点的指针; 返回值:无。 (5)函数原型:void saverec(struct address *head,char *filename); 功能:将链表中各记

文档评论(0)

2232文档 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档