shaoguanfa 发表于 2014-12-23 22:40:24

C初学者 求解释一下这个简单的程序。

#include <stdio.h> conio.h
void main( )
{
int n;
for (n=100;n<=200;n++)
{
if(n%3==0)
   continue;
printf("%d ",n);
}
}
把100~200之间的不能被3整除的数输出。
为什么是 if(n%3==0)呢?这个很纠结,还没搞明白。{:5_111:}

韬子 发表于 2014-12-24 07:23:57

如果是一个等号不就是赋值吗?俩等于号是判断是否相等返回真假(0,1)

shaoguanfa 发表于 2014-12-24 07:55:48

看了下一章的视频才知道是取余的   

小人 发表于 2014-12-24 09:25:28

这算是遍历吧 ,就是n是一个200到300间的递增变量   
又for来递增循环
if   来判断n是否可以被3整除
{:9_240:}

shaoguanfa 发表于 2014-12-24 10:11:02

是的没搞明白%(取模)脑袋短路了{:5_100:}

yuliang729 发表于 2014-12-25 11:36:32

if(n%3==0)表示能被3整除,通过continue就跳过本次循环,也就不执行输出语句printf();所以本程序就能显示输出100-200中不能被3整除的数啦!

hacker.jin 发表于 2014-12-26 12:56:31

yuliang729 发表于 2014-12-25 11:36
if(n%3==0)表示能被3整除,通过continue就跳过本次循环,也就不执行输出语句printf();所以本程序就能显 ...

if(n%3==0)
   continue;

能被3整除跳出循环
不能则打印当前数值

hacker.jin 发表于 2014-12-26 12:57:04

if(n%3==0)
   continue;

能被3整除跳出循环
不能则打印当前数值

ebloke 发表于 2015-3-6 13:14:13

int n; //定义一个整型变量n
for (n=100;n<=200;n++) //for循环 (n的初值100;判断n小于或等于200;那么n=n+1)
{
if(n%3==0)                            //内部判断(n除3取余数==0)
   continue;                           //       跳出循环,返回for循环 再次循环直至n>200
printf("%d ",n);                     // 输出(以整数型式,n的值)
页: [1]
查看完整版本: C初学者 求解释一下这个简单的程序。