鱼C论坛

 找回密码
 立即注册
查看: 602|回复: 10

[已解决]for

[复制链接]
发表于 2020-6-20 10:24:41 From FishC Mobile | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
这个i++是先用i去判断i<3 然后再进行i的自加吗
最佳答案
2020-6-20 10:48:45
掌芝士 发表于 2020-6-20 10:39
那这里i++和++i效果就一样的吗
是不是只有在同一个语句里面这两种自加才有区别

在for 循环里面,这两个没有区别,我写了一个例子,你运行看一下
  1. #include <stdio.h>

  2. int main()
  3. {
  4.     int i ,a = 4, b=4;

  5.     for (i= 2;i <=4;i++)
  6.     {
  7.             printf("i++ :%d \n",i);
  8.            
  9.         }
  10.         printf("\n");
  11.         for (i= 2;i <=4;++i)
  12.     {
  13.             printf("++i :%d \n",i);
  14.         }
  15.        
  16.    
  17.     return 0;
  18. }
复制代码

IMG_20200620_102252.jpg
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-6-20 10:32:00 | 显示全部楼层
本帖最后由 猪猪虾 于 2020-6-20 10:33 编辑
  1. 例如
  2. for(i = 1;i <5;i++)
  3. {
  4.     printf(i);
  5. }

复制代码

第一次进入循环时,先执行的是i = 1,判断i是否小于5,然后最先打印出来的是i = 1;之后就开始i++,也就是i = i+1,然后判断i是否小于5,满足条件,执行循环体里面的语句,所以下一次打印的就是2,依次累加
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-20 10:33:31 From FishC Mobile | 显示全部楼层
猪猪虾 发表于 2020-6-20 10:32
第一次进入循环时,先执行的是i = 1,然后最先打印出来的是i = 1;之后就开始i++,也就是i = i+1,,所以下 ...

我就是弄不清那个i<5是用什么时候的i进行判断,是用自加前还是自加后的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-20 10:35:34 | 显示全部楼层
掌芝士 发表于 2020-6-20 10:33
我就是弄不清那个i

从第二次循环开始,用加了之后的i去判断,第一次循环,用的就是i的初始值去判断,例如我刚才的例子,第一循环就用i = 1去判断即可
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-20 10:39:30 From FishC Mobile | 显示全部楼层
猪猪虾 发表于 2020-6-20 10:35
从第二次循环开始,用加了之后的i去判断,第一次循环,用的就是i的初始值去判断,例如我刚才的例子,第一 ...

那这里i++和++i效果就一样的吗
是不是只有在同一个语句里面这两种自加才有区别
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-20 10:48:45 | 显示全部楼层    本楼为最佳答案   
掌芝士 发表于 2020-6-20 10:39
那这里i++和++i效果就一样的吗
是不是只有在同一个语句里面这两种自加才有区别

在for 循环里面,这两个没有区别,我写了一个例子,你运行看一下
  1. #include <stdio.h>

  2. int main()
  3. {
  4.     int i ,a = 4, b=4;

  5.     for (i= 2;i <=4;i++)
  6.     {
  7.             printf("i++ :%d \n",i);
  8.            
  9.         }
  10.         printf("\n");
  11.         for (i= 2;i <=4;++i)
  12.     {
  13.             printf("++i :%d \n",i);
  14.         }
  15.        
  16.    
  17.     return 0;
  18. }
复制代码

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-20 10:51:37 | 显示全部楼层
你这是在迫害我的脖子吗..
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-20 10:52:35 From FishC Mobile | 显示全部楼层
Pythonnewers 发表于 2020-6-20 10:51
你这是在迫害我的脖子吗..

哥,我的错
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-20 10:53:08 From FishC Mobile | 显示全部楼层
猪猪虾 发表于 2020-6-20 10:48
在for 循环里面,这两个没有区别,我写了一个例子,你运行看一下

ookk
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-20 10:54:22 | 显示全部楼层

懂了的话,麻烦给个最佳,感谢感谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-20 10:57:28 From FishC Mobile | 显示全部楼层
猪猪虾 发表于 2020-6-20 10:54
懂了的话,麻烦给个最佳,感谢感谢

没问题,应该的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-8 12:34

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表