鱼C论坛

 找回密码
 立即注册
查看: 2831|回复: 4

[已解决]for循环怎么计算判断次数?

[复制链接]
发表于 2021-6-11 22:07:32 | 显示全部楼层 |阅读模式

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

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

x
  1. main()
  2. {int i,j,k,m,n=0;
  3. for(i=1;i<=10;i++)                                                                                        /*列举4个1到9之间的数的所有排列,供选择*/
  4.         for(j=1;j<=10;j++)
  5.                 for(k=1;k<=10;k++)
  6.                         for(m=1;m<=10;m++)
  7.                         {if(i==j||i==k||i==m||j==k||j==m||k==m) continue;
  8.                          if(i+j+k+m!=12)continue;                                                        /*不满足条件,舍弃*/
  9.                          n++;                                                                                /*满足条件的排列计数*/
  10.                          printf("{%d,%d,%d,%d,}",i,j,k,m);
  11.                          if(n%6==0)printf("\n");                                                        /*每行输出6个排列*/
  12.                         }
  13. }
复制代码

运行结果:{1,2,3,6} {1,2,4,5} {1,2,5,4} {1,2,6,3}...... 结果在这不一一列举了
问题:代码中共循环了9^4=6561次,然后后面它说每次循环判断8次,共8*9^4=5488次判断,这个判断次数我不知道怎么得出来的,8次判断分别是哪些?for语句的表达式2是控制条件语句,4个for语句,然后花括号里的3个if语句,在我的理解看来是7个判断。
最佳答案
2021-6-12 05:14:08
3个if语句,第一个是6个判断,总共8个,话说研究这个有意义吗
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-6-11 22:21:28 | 显示全部楼层
加一个变量呗  
int count = 0;
最内层for
count++;
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-6-11 23:00:02 | 显示全部楼层
万千只cnm 发表于 2021-6-11 22:21
加一个变量呗  
int count = 0;
最内层for

不是啊,我是问总共代码里要判断多少次,所有的排列的,不管符合条件的还是不符合条件的
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-6-12 05:14:08 From FishC Mobile | 显示全部楼层    本楼为最佳答案   
3个if语句,第一个是6个判断,总共8个,话说研究这个有意义吗
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-6-13 09:17:24 | 显示全部楼层
wp231957 发表于 2021-6-12 05:14
3个if语句,第一个是6个判断,总共8个,话说研究这个有意义吗

是没啥意义,但是想知道罢了,不然我以为又是书错的了,这书印刷看的我有点一言难尽,等新书到了就不看这书了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-4-27 22:32

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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