标题:[求助]这两道循环的题怎解?
只看楼主
死神7451
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2007-5-18
得分:0 
以下是引用fishlover在2007-5-22 0:26:44的发言:

if(i) 这个怎么解释来着??

不懂

if(i)
当i==0时候条件语句不成立
当i!=0的时候是真值1条件语句成立并执行。。
和我楼上的说的差不多~


2007-05-25 17:22
小子也大叔
Rank: 2
等 级:新手上路
威 望:4
帖 子:143
专家分:0
注 册:2007-4-23
得分:0 

#include<stdio.h>
#include<stdlib.h>

int main()
{
int i=2,j=2;
if(i)//相当与if(i!=0)
{
if(j==2)
{
i++;
j++;//经过前面两句i 和 j 的值都改变了,i=3 j=3
printf("\ni+j=%d",i+j);//所以i+j=6
}
}
if(i)//同上if(i) 这里i=3
{
for(j=1;j<i-1;j++)//j<i-1 相当于j<2 又由于j=1 所以这个循环就只执行一次
{
if(j==i)//由于i始终为3 所以永远不执行这句
{
printf("\nj=%d\n",j);
}
else
{
printf("\nOK! GOOD! \n");// if(j==i)//由于i始终为3 所以永远不执行这句 这是上面那个注释 现在你应该可以  知道答案了吧
}
}
}

system("pause");
return 0;
}


希望一心想学c的加我的群吧~~ 40834003
2007-05-25 19:05
小子也大叔
Rank: 2
等 级:新手上路
威 望:4
帖 子:143
专家分:0
注 册:2007-4-23
得分:0 

#include<stdio.h>
#include<stdlib.h>


int main()
{
long data;

printf("enter date:");
scanf("%ld",&data);

while(data)//知道date=date/10=0为止
{
printf("%ld\n",data%10);// 我就拿前两次为例 12345%10=5
data=data/10;// 12345/10=1234 以此类推 最后一次呢 就是1%10=1 然后1/10=0 结束循环
}

system("pause");
return 0;
}


希望一心想学c的加我的群吧~~ 40834003
2007-05-25 19:33



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-140941-1-1.html




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

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