由希尔排序算法实现引起的for循环执行过程及i++和++i异同的提问——打打基础
来源:互联网 发布:商城制作软件 编辑:程序博客网 时间:2024/06/03 22:52
昨天对希尔排序的算法讨论中出现了两个问题,一个是对这个算法实现的不理解;另一个是对for循环的执行过程和i++及++i在其中运用的不理解。
前者主要是大家对c语法有些陌生,将程序分块来看就会容易些!代码及实现过程如下图所示:
从上图代码很容易看出希尔排序的思想实现主要是在序号1的while循环中完成的。序号1循环控制的是增量序列的变化,序号2控制的是在某个增量值下交换待排序序列的每一组,序号3、4控制的是每组值是应该交换及交换运算!
对于for循环及执行过程如下图所示:
而对于其中的i++换成++i及其所放位置在for循环中是一样的!它们不同用法之一是在计算问题中使用时!验证过程如下所示:
#include"stdio.h"void main(){int i;//验证for循环的执行过程和i++及++i的所放位置及用法异同//使用i++,在条件中for(i=0;i<2;i++){printf("%d/n" , i);getchar();}printf("i++ in condition is ok");printf("/n","");getchar();//使用++i,在条件中for(i=0;i<2;++i){printf("%d/n",i);getchar();}printf("++i in condition is ok");printf("/n","");getchar();//使用++i,在循环体内for(i=0;i<2;){printf("%d/n",i);getchar();++i;}printf("++i in loop-body is ok");printf("/n","");getchar();//使用i++,在循环体内for(i=0;i<2;){printf("%d/n",i);getchar();i++;}printf("i++ in loop-body is ok");printf("/n","");getchar();//======================//验证i++和++ii=0;int count=0;count=1+i++;printf("count值是:%d/n",count);printf("i值是:%d/n",i);printf("i++ is ok");printf("/n","");getchar();i=0;count=0;count=++i+1;printf("count值是:%d/n",count);printf("i值是:%d/n",i);printf("++i is ok");getchar();}
通过讨论不仅能够带动参与人积极思考,而且还能学到一个人看书所不能看到学到的知识!
基础还很欠缺,要多思考多讨论多练习……
//代码证明补充2010-10-26
i++(即上述运算执行步骤中的3)在循环完之前运行了一次,中途中断的话不会运行i++了
结果:
- 由希尔排序算法实现引起的for循环执行过程及i++和++i异同的提问——打打基础
- JAVA for循环执行顺序 及 i++和++i的区别
- for的执行过程 (++i, i++)
- for循环 i++和++i 的区别
- 在XSL里执行类似for(i=0;i<n;i++)的循环----我的实现
- for循环里的i++和++i的效率
- for循环里面的++i和i++的区别
- for循环中i++和++i的区别
- for()循环中 i++ 和 ++i的区别
- 在XSL里执行类似for(i=0;i〈x;i++)的循环
- 在XSL里执行类似for(i=0;i〈x;i++)的循环
- 在XSL里执行类似for(i=0;i<n;i++)的循环
- 几个基础算法介绍和实现——希尔排序
- i++ 与 ++i 的执行过程
- for语句实现循环的执行过程
- 希尔排序算法思想及实现过程
- ++循环与i--循环的执行效率
- i++循环与i--循环的执行效率
- Hibernate的缓存机制
- %TYPE和%ROWTYPE有什么不同
- 从内部中国电信的管理弊端
- 宁波20名中医药专家呼吁振兴和发展中医药事业
- ZenCart模板 B2C英文购物网站 外贸网站建设
- 由希尔排序算法实现引起的for循环执行过程及i++和++i异同的提问——打打基础
- C++内联函数(Inline)
- 上传一个录屏软件
- 详解用批处理写一个Oracle备份工具
- 宁波出台意见扶持促进中医药发展
- string 类的使用方法
- jQuery $.get $.post $.getJSON 详解
- Silverlight4和Flash10/AIR2对比和选择
- 增城家园 网友来学习楼主啦