| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 428 人关注过本帖
标题:西语言问题,求助
只看楼主 加入收藏
question
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2007-3-20
收藏
 问题点数:0 回复次数:3 
西语言问题,求助

int k,j,s;

for(k=2;k<6;k++,k++)

{ s=1;for(j=k;j<6;j++)s+=j; }

printf("%d\n",s)

问输出结果。。。答案只有9,1,11,10四个,但是我怎么理解不了啊,他不是for的嵌套吗,先进行里面的for循环,j=k,k的初值为2,j<6,j++的情况下可以循环4次。外循环在k<6,k++,k++的情况下可以循环一次,这样的话。。。我就搞不懂了,请达人指点

还有

int x=3;

do

{ printf("%3d",x-=2); }

while(!(--x);

输出结果是。。。。这里我不懂while(!(--x))是什么意思,我直到do while 语句里面,只要while里面语句为真就执行do语句,!(--x)何时为真?

还有

#include "math.h"

main ()

{ int i,x,yes,a;

printf ("enter integer number:"); sanf("%d",&x);

yes=1;i=2;

a=(int)sqrt((double)x);

while(yes&&i<=a)

{if(x%i==0) yes=0;

i++;}

printf("%d",x,);

if(yes) printf("YES\n");

else printf("NO\n");

}

上面程序里面的if(yes)里面是不是有错误?因为没有满足的条件。。。

小弟初学,问题较多,望不吝赐教

搜索更多相关主题的帖子: 语言 
2007-03-20 19:01
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
1.外循环k 只执行2,4.内循环执行2--5,4--5.如果你程序没有写错的话,S只记录最后一次循环的结果,即9.
2.do while()循环,先做循环体,x-=2得到x=1.再判断while(!(--x))/x=0,!x=1;继续执行循环x-=2,输出-2,再判断!(--x)=0,退出循环.
3.sanf("%d",&x);//写错.整个程序没有错,循环条件也没有错.
如果语义是当X是素数时打印YES的话,那就对了.

倚天照海花无数,流水高山心自知。
2007-03-20 21:56
question
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2007-3-20
收藏
得分:0 

谢谢班竹提点,已经明白。。。

还有一点疑问,第一个程序中因为s初值为1,只记录最后一次结果,那是不是应该是1+4+5=10呢

2007-03-20 23:14
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
对.

倚天照海花无数,流水高山心自知。
2007-03-20 23:27
快速回复:西语言问题,求助
数据加载中...
 
   



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

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