当前位置: 首页 > news >正文

php订餐网站开发文献顺德网站制作案例教程

php订餐网站开发文献,顺德网站制作案例教程,diy平台,wordpress php密码配置文件作为嵌入式工程师#xff0c;怎么写出效率高、思路清晰的C语言程序呢? 要用C语言的思维方式来进行程序的构架构建 要有良好的C语言算法基础#xff0c;以此来实现程序的逻辑构架 灵活运用C语言的指针操作 虽然看起来以上的说法很抽象#xff0c;给人如坠雾里的感觉怎么写出效率高、思路清晰的C语言程序呢? 要用C语言的思维方式来进行程序的构架构建 要有良好的C语言算法基础以此来实现程序的逻辑构架 灵活运用C语言的指针操作 虽然看起来以上的说法很抽象给人如坠雾里的感觉其实就是用C语言进行遇到问题、分析问题和解决问题的过程。 嵌入式工程师在编写C语言程序的时候要针对遇到的问题进行程序构架构建。 比如我们要处理“猴子选大王”的经典问题一群猴子手拉手排成一个圆从任意一只猴子开始从1开始报数当遇到要排除的数(预先设定)时该猴子退出该圈从下一只猴子开始继续从1报数如此反复最终剩下的猴子便是猴子的大王。 用C语言的思维方式进行程序构架构建 程序分为三大部分 a、数据获取为了程序的运行上面的问题要获得猴子的总数从那只猴子开始和剔除的个数 b、数据运算需要从一堆数据中剔除相应的数据注意逻辑的正确 c、提高程序的运行速率少用循环多用指针。 用C语言进行逻辑实现 a、 数据获取通过printf和scanf进行参数的获取。 /* 读入问题条件 */printf(input total num:);scanf(%d, n);printf(from which num begin:);scanf(%d, k);if(kn||k0){printf(please input the right begin num);return 1; }printf(input the out num:);scanf(%d, m);if(mn||m0){ printf(please input the right del num);return 2; } 同时注意异常时的处理比如上面两个if语句就是异常情况的判断每种异常情况对应不同的返回值这样便于程序过程的调试和数据的合法性。 b、 /* 定义链表节点类型 */ typedef struct node{int data;struct node *next;}linklist; 构建循环链表进行“猴子”的圆圈建设。 /* 创建循环链表头节点也存信息 */head (linklist*) malloc(sizeof(linklist));p head;p-data 1;p-next p;/* 初始化循环链表 */for (i 2; i n; i){s (linklist*) malloc(sizeof(linklist));s-data i;s-next p-next;p-next s;p p-next;} 通过该步骤后head和p(present)都成了一个“猴子圈”的链表。在该链表的构建过程中需要注意以下几点内存的开辟此时遵守使用多少开辟多少的原则。 如果一下开辟过多会引起内存泄露的问题但是这个小程序是不会遇到这种问题了。其次是熟悉循环链表的构建方法链表的尾巴指向链表的头。这个时候有心的话还会联想到双向链表的情况。 c、 /* 找到第 k 个节点 */ p  head;for (i 1; i k; i){p p-next;} 找到从第几个位置开始计数。此时p指向开始的“猴子”。因为采用了链表方法这个过程只需要关注p指针的next指向即可。 a、 保存初始的“猴子”圆圈参数。 /* 保存节点总数 */​total n;printf(\nthe out num:);q head; 为什么要保留这个呢?首先要控制猴子数目所以保留了全部的数目。其次用q(qurry)来保留剔除猴子前面的链表并连接剔除猴子后的链表。这样完成了循环链表的元素删除。 b、 猴子查数。 猴子查数是整个程序的关键需要完成以下任务a、找到开始的“猴子”数;b、删除该“猴子”;c、将删除掉的循环链表首尾连接起来。 /* 只剩一个节点时停止循环 */while (total ! 1){/* 报数过程p指向要删除的节点 */for (i 1; i m; i){p p-next;}/* 打印要删除的节点序号 */printf([%d] , p-data);/* q 指向 p 节点的前驱 */while (q-next ! p){q q-next;}/* 删除 p 节点 */q-next p-next;/* 保存被删除节点指针 */s p;/* p 指向被删除节点的后继 */p p-next;/* 释放被删除的节点 */free(s);/* 节点个数减一 */total--;}/* 打印最后剩下的节点序号 */printf(\n\nthe last num:[%d] \n\n, p-data);free(p);} 通过以上数据运算可以完成相应链表元素的删除这或许就是C语言程序的魅力所在。 使用C语言的指针 比如本程序的链表指针的定义psq。 linklist *head, *p, *s, *q; 我们知道指针操作不但可以减少数据操作需要的内存还可以提高程序的运行速度。 指针的优势或许在本程序中表现的不明显在大量数据和对操作速度要求比较敏感的情况下会很明显比如Linux内核中就会有很好的体现。
http://www.zqtcl.cn/news/458072/

相关文章:

  • 微网站开发+在线商城建设局招标网站
  • 网站开发的基本过程关岭做网站
  • 高端网站哪种好WordPress媒体库丢失
  • 澄迈网站新闻建设宣传视频
  • 南昌优化网站排名公司建设网站的步骤
  • 一个人做网站wordpress如何加链接
  • 查网站服务器所在地笔记本电脑安装wordpress
  • 石家庄网站推广专家php网站分类目录源码
  • 盐城市城乡建设局门户网站低代码开发软件
  • 网站建设中的html深圳建设网站需要多少钱
  • 南阳公司网站制作品牌推广工作内容
  • 网站被刷流量怎么办红色php企业网站模板下载
  • 做现货黄金的金融网站设计平台app
  • 淘宝客手机网站搭建网站设计专业公司
  • 做网站用的图片怎样压缩钓鱼网站的制作教程
  • 建设网站类型wordpress竖版图片尺寸
  • 网站建设数据库ER图怎么画公司网站建设建议书
  • 网站建设网站制作有限排名优化课程
  • 绵竹网站建设佛山网络营销推广
  • 网站备案名称重复学会网站建设目的
  • 网站套餐到期什么意思孝感的网站建设
  • 网站制作费用多少钱房地产建筑设计公司
  • 网站优化要素做网站看百度脸色
  • 软件开发 网站开发区别seo怎么刷关键词排名
  • python 网站开发必会智能网站
  • 重庆建设摩托车官方网站网络是干什么的
  • 建筑工程网站源码wordpress 多域名 图片不显示
  • 大型网站建设优化排名wordpress 投稿 插件
  • 二维码的网站如何做静安免费网站制作
  • 微网站免费模板管理网络的网站