ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

循环结构的循环条件为自增或自减表达式

2022-07-08 19:36:58  阅读:107  来源: 互联网

标签:自增 循环体 -- ++ int while 循环 自减



/*测试程序 2015.12.26*/
#include <stdio.h>
#define TEN 10


int main(void)
{
  int n = 0;
  while(n++ < TEN)
  printf("%5d", n);
  printf("\n");
  return 0;
}

开始我认为输出结果为 0 1 2 3 4 5 6 7 8 9 10,但是在VC++6.0中验证之后发现结果为 1 2 3 4 5 6 7 8 9 10。

1、--a //前减减
int a = 2;
while(--a>0){}
完全等价于:

int a = 2;
a--;
while(a>0)

{
  a--;
}
2、a-- //后减减
int a = 2;
while(a-->0){}
并非完全等价于:

int a = 2;
while(a>0)

{
  a--;
}
因为,while(a-->0) 自减条件在while循环中,即使条件不符,后减的a,仍会执行;

但如果a--放在了循环体中的话,后减的a就不会执行了。所以,二者的区别是a的区别:放在循环条件的a比放在循环体中的a大1。

即:等价于以下程序。

int a = 2;
while(a>0)

{
  a--;
}
a--;
3、总结:
自增或自减运算符放在循环条件中,代码更加简洁。

好多情况下,我们将表达式放在循环条件中,

比如:

while(getchar())

4、while循环与for循环的区别
//while循环中的i++位置更加灵活
int i = 0;
while(i<10)
{
  i++;//i++可以放在循环体的前面

  i++;//i++可以放在循环体的最后
}

//for循环中的i++,完全等价于i++在while循环体末尾的情况,只有执行了循环内容,才会执行i++
for(int i = 0;i<10;i++){}

标签:自增,循环体,--,++,int,while,循环,自减
来源: https://www.cnblogs.com/yuandongtao1989/p/16459414.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有