| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 852 人关注过本帖
标题:偶刚学C语言,循环实在搞不清楚如何判断
只看楼主 加入收藏
vivanyang
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2006-10-4
收藏
 问题点数:0 回复次数:7 
偶刚学C语言,循环实在搞不清楚如何判断
比如while, 如何判断表达式,一道题目看例子可以看出为什么.但是换到自己写就不知道到底要判断什么为真,什么为假.就象最简单的,输入一个数求乘阶.n=1*2*3.....*n,根本不了解while中判断什么,for中要判断什么!大家帮帮忙了~~~~~帮偶整理一下思路
搜索更多相关主题的帖子: C语言 判断 思路 例子 
2006-10-04 16:49
vivanyang
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2006-10-4
收藏
得分:0 
偶不是要答案,而是要理解为什么要怎么判断,碰到各种题目是否有一个共同的思路,求求各位帮忙.~这是书上最简单的一道例题而已,答案早有了~~
2006-10-04 16:51
sunyuantz
Rank: 1
等 级:新手上路
威 望:1
帖 子:407
专家分:0
注 册:2006-3-20
收藏
得分:0 

个人认为:循环里的判断是判断你所要的循环体执行的次数,比如n=1*2*3.....*n,循环体得执行n次所以就得写成i<=n(i从1开始到10才执行10次,若i从0开始,就执行到9,这样刚好也是10次,本题i不能从1开始所以必须写成i<=n)


我不是名人,所以不要签名。等哪天我成名人了......你都认识我了还要签名干嘛!
2006-10-04 17:01
vivanyang
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2006-10-4
收藏
得分:0 

看了三楼的还是不懂,你所说的i代表什么?n又代表什么?这题目比较简单一眼也能看出结果.每次只要n=n*(n+1)就可以了!但是如果再难一点怎么办,还是不理解思路,最好能举个例子表达一下共同点,谢谢了,因为刚刚学习,思路实在转不过来.看别人题目可以看懂自己写根本不知道从哪里开始,从一开始要定义几个变量都搞不清楚.谢谢各位帮帮忙了~~~

2006-10-04 17:34
菜鸟笨鸟
Rank: 1
等 级:新手上路
帖 子:87
专家分:0
注 册:2006-9-2
收藏
得分:0 
循环的结构你一定可以掌握吧!
作题目要先知道算法才可以知道循环中变量的范围
这个就不好说了 因为没个题目都有不同的算法
while 循环和for循环有点区别是
前者一般用在不知道要循环多少次的情况下
而后者一般用在知道循环次数的时候
当然有的时候两者可以等同使用 效果一样

偶是大菜鸟~!
2006-10-04 17:43
sunyuantz
Rank: 1
等 级:新手上路
威 望:1
帖 子:407
专家分:0
注 册:2006-3-20
收藏
得分:0 
i是每次增加的变量,设n=10得话,i的增长一旦超过10,i&lt;n,这个式子为假,就退出循环,你所要做的事情就是该怎么退出循环,而又能完成你循环的目的。复杂的例子今天没时间写了,明天贴给你,如果有那位大虾愿意的话,请你们贴个上来,我要下了,真不好意思。可能你还不明白,让我今晚好好想一下!

我不是名人,所以不要签名。等哪天我成名人了......你都认识我了还要签名干嘛!
2006-10-04 17:53
unicorn
Rank: 4
等 级:贵宾
威 望:14
帖 子:1066
专家分:0
注 册:2005-10-25
收藏
得分:0 

看书了嘛 应该有很清晰的讲解把

while 和for 都是处理循环的关键字

while(条件语句)
{循环体}

条件语句是指如果满足某个条件则进入循环体,某个条件都是个人根据循环体里的出口条件设置的(因为不能无限的循环必须有出来的时候),如
while(1>0) //如果1>0就进入循环体,这肯定是一个死循环,因为没有出口条件,1永远都大于0的,所有这种条件是无意义的


循环体里放的是你想循环的内容,如
求这个序列的结果sum=1*2*3*...*n

你会分析到没项是在前一项的基础上增加的,可以设每项为x 那么下一项不就是x+1了吗

上述式子等价于sum=x*(x+1)*(x+2)*...*(x+n-1)

现在考虑的问题就可以放倒循环中了每次循环都让x的值加1然后于与x的前一项乘即可,设置x初值为1,sum初值为1

while(条件语句)
{sum=sum*x;
x=x+1;}
分析:首次进入循环sum=1*1=1 然后x=1+1=2
下次循环:sum=sum*x=1*2=2 然后x=2+1=3
下次:sum=2*3=6 然后x=3+1=4
... ...

这样下去肯定是无止境的,所以要确定一个出口条件,当x为n时就可以出去了
n可以由你确定,如

sum=1*2*3*4 这里n就是4

所以完整的循环结构为
while(x<=4)
{
sum=sum*x;
x=x+1;
}//当x增加到>4的时候不满足x<=4所有不能进入循环体代表循环的结束


for 的循环思想也是相同的 只是执行的顺序有要求,如果你看懂while的工作过程for应该自己可以理解吧


unicorn-h.spaces. ◇◆ sava-scratch.spaces.  noh enol ! pue pu!w hw u! shemle aq ll!m noh 
2006-10-04 18:00
lansite2006
Rank: 1
等 级:新手上路
帖 子:71
专家分:0
注 册:2006-9-10
收藏
得分:0 

谢谢各位了!!

2006-10-04 19:01
快速回复:偶刚学C语言,循环实在搞不清楚如何判断
数据加载中...
 
   



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

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