鱼C论坛

 找回密码
 立即注册
查看: 330|回复: 12

输出100至200间不能被3整除的数,我这样写为什么不行

[复制链接]
发表于 2024-2-19 21:38:26 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include<stdio.h>
int main()
{
int n=100,m=0;
while(n>=100&&n<=200)
{
  if(n%3==0)
          continue;
  else
  {
      m++;
          if(m%6==0)
                  printf("\n");
          printf("%d   ",n);
  }
      n++;
}
return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-2-19 21:38:39 | 显示全部楼层
您的代码中缺少一些关键的部分,导致程序无法正常运行。我来给您补充完整的代码:

  1. #include <stdio.h>

  2. int main() {
  3.     int n = 100;
  4.     while (n <= 200) {
  5.         if (n % 3 != 0) {
  6.             printf("%d\n", n);
  7.         }
  8.         n++;
  9.     }

  10.     return 0;
  11. }
复制代码


这段代码使用了一个while循环,从100开始逐个判断数值是否不能被3整除。如果满足条件,则使用printf函数将其输出。最后,n自增1,继续下一次循环。这样就能得到100至200之间不能被3整除的数了。

希望对您有帮助!如有疑问,请随时追问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-19 22:08:20 | 显示全部楼层
“          if(m%6==0)
                  printf("\n");”

这里没有加大括号

点评

每个if里面都没有大括号  发表于 2024-2-19 22:08
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2024-2-20 09:09:16 | 显示全部楼层
FishC 发表于 2024-2-19 21:38
您的代码中缺少一些关键的部分,导致程序无法正常运行。我来给您补充完整的代码:

我是想把continue语句用进去
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-20 09:09:28 | 显示全部楼层
wsb1991abc 发表于 2024-02-20 09:09
我是想把continue语句用进去


抱歉,我之前的回答有些混乱。您提到想要使用`continue`语句来解决这个问题,确实是一个可行的方法。这里是一个使用`continue`语句的示例代码:

  1. for num in range(100, 201):
  2.     if num % 3 == 0:
  3.         continue
  4.     print(num, end=' ')
复制代码


在上面的代码中,我们使用了`range(100, 201)`来生成100至200间的所有数,然后使用`for`循环遍历其中的每一个数。在循环内部,我们使用条件判断`if num % 3 == 0`来判断该数是否能被3整除。如果能被整除,我们使用`continue`语句跳过当前迭代,直接进入下一次循环。只有当条件判断为假时(即不能被3整除),才会执行`print(num, end=' ')`来输出该数。

希望这次的解答对您有帮助!如果还有其他问题,请随时提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-20 11:19:03 From FishC Mobile | 显示全部楼层
#include<stdio.h>
int main()
{
int n=100,m=0;
while(n>=100&&n<=200)
{
  if(n%3==0)

          n++;
          continue;
  }
  else
  {
      m++;
          if(m%6==0)
                  printf("\n");
          printf("%d   ",n);
  }
      n++;
}
return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-20 11:20:04 From FishC Mobile | 显示全部楼层
萧_晨 发表于 2024-2-20 11:19
#include
int main()
{

原本的代码一直在n = 102 死循环
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-20 11:49:11 | 显示全部楼层
陶远航 发表于 2024-2-19 22:08
“          if(m%6==0)
                  printf("\n");”

if下卖弄如果只有一行是可以不用大括号
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-20 12:24:17 | 显示全部楼层
学习编程中的Ben 发表于 2024-2-20 11:49
if下卖弄如果只有一行是可以不用大括号

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-2-20 15:59:20 | 显示全部楼层
萧_晨 发表于 2024-2-20 11:20
原本的代码一直在n = 102 死循环

就是一直在n=102死循环,不知道为什么会这样
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-20 18:50:24 From FishC Mobile | 显示全部楼层
wsb1991abc 发表于 2024-2-20 15:59
就是一直在n=102死循环,不知道为什么会这样

你continue 了,结束本次循环,n没有自增,n = 102 符合判断条件, 再次进入循环体,又是从 continue 处结束本次循环,程序一直在重复这个过程
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-2-20 19:19:44 | 显示全部楼层
萧_晨 发表于 2024-2-20 18:50
你continue 了,结束本次循环,n没有自增,n = 102 符合判断条件, 再次进入循环体,又是从 continue 处 ...

谢谢大神的解释,刚又想了一下,看来对循环还没有理解到位
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-28 09:55

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表