| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 696 人关注过本帖
标题:还是求助,遇到if语句的特殊情况,不知如何理解
只看楼主 加入收藏
yaobao
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:4
帖 子:1854
专家分:4121
注 册:2012-10-25
收藏
得分:0 
是不是这样理解的
#include "math.h"
main()
{
  int m,i,k,h=0,leap=1;//这里为leap赋予了一个初始值1
  printf("\n");
  for(m=101;m<=200;m++)
   { k=sqrt(m+1);
    for(i=2;i<=k;i++)
      if(m%i==0)
       {leap=0;break;}//*这里为所有i的值做了个leap的标记,能整除m的被标记为0,不能的仍是初始值1*//
    if(leap) {printf("%-4d",m);h++; //*这个leap是个省略形式,因为这个if语句和上一个if语句没有包涵关系,所以他的原型是原来的值1也就是leap==1*//           
              if(h%10==0)               
         printf("\n");
        }
    leap=1;//*将所有m的值重新还原成1,开始下一轮循环*//
   }
  printf("\nThe total is %d",h);
}
不知道我这样理解对不对,望指教。

认认真真的学习,踏踏实实的走路:戒骄戒躁!!!
2012-10-25 19:22
zxd543
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:内蒙古
等 级:贵宾
威 望:17
帖 子:453
专家分:2351
注 册:2012-4-12
收藏
得分:5 
回复 5楼 yaobao
#include "math.h"
main()
{
  int m,i,k,h=0,leap=1;
  printf("\n");
  for(m=101;m<=200;m++)
   { k=sqrt(m+1);
    for(i=2;i<=k;i++)
      if(m%i==0)
       {leap=0;break;}//此处将0赋值给leap,leap==0 ,break跳出循环 说明m不是一个素数
       if(leap)   //此处判断leap是不是为真,若为真说明上边for循环正常结束,则说明m是一个素数
                       不为真说明leap被赋值过 说明m不是一个素  C语言中除了0之外的数全部为真
                       你可以改成 if(leap==1)
         {printf("%-4d",m);h++;
         if(h%10==0)
         printf("\n");
        }
    leap=1;//将leap重新初始化 m进行下一次循环
   }
  printf("\nThe total is %d",h);
}

马马虎虎 不吝赐教 我是路过蹭分滴
2012-10-25 23:55
c语言DYY
Rank: 2
等 级:论坛游民
帖 子:51
专家分:44
注 册:2012-10-21
收藏
得分:0 
学习。
2012-10-26 00:59
yaobao
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:4
帖 子:1854
专家分:4121
注 册:2012-10-25
收藏
得分:0 
受到
了解
明白
谢谢

认认真真的学习,踏踏实实的走路:戒骄戒躁!!!
2012-10-26 08:04
dralausky
Rank: 1
等 级:新手上路
帖 子:4
专家分:9
注 册:2012-10-26
收藏
得分:5 
以下是引用龙航四海在2012-10-25 19:10:25的发言:

这个相当于if(leap==1)

楼上此为错的,if(leap)表示为if(leap!=0)两种之间的差别是很大的。请注意。
2012-10-26 09:57
yaobao
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:4
帖 子:1854
专家分:4121
注 册:2012-10-25
收藏
得分:0 
明白了,谢谢各位。

认认真真的学习,踏踏实实的走路:戒骄戒躁!!!
2012-10-26 10:31
yaobao
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:4
帖 子:1854
专家分:4121
注 册:2012-10-25
收藏
得分:0 

翻遍书,找遍网,问遍人,终于找到了。
谭浩强著C语言程序设计第四版第95页下数第9行。反复研究,来回琢磨————终于,茅厕顿开。

认认真真的学习,踏踏实实的走路:戒骄戒躁!!!
2012-10-26 14:25
快速回复:还是求助,遇到if语句的特殊情况,不知如何理解
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012292 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved