gpt4 book ai didi

c - 找出 100 到 40 之间 3 的倍数的数字

转载 作者:行者123 更新时间:2023-11-30 18:40:57 33 4
gpt4 key购买 nike

正如标题所说,我必须找到数字 40 和 100 之间出现的倍数。我必须使用 for

  #include <stdio.h>
#include <conio.h>

int main()
{
int n=3;
int i=100;
for(i=100;i>=40;i--)

printf(" %d ",n*n);
getch();
return 0;
}

这就是我所拥有的。但它多次只打印数字 9。我该如何修复它才能打印出 3 的所有倍数?

最佳答案

为什么要打印 n*n? n 始终为 3,n*n 始终为 9。因此始终打印 9。你想要做的是遍历 40 到 100 之间的所有数字,检查该数字是否能被 3 整除,然后打印它。 % 运算符给出除某物时的余数,因此如果除以 3 时余数为 0,则意味着该数字可以被 3 整除。您将这样进行操作:

   #include <stdio.h>
#include <conio.h>

int main()
{
//int n=3;Don't need n=3, we will simply use 3 itself.
int i; //Not needed to initialize to 100 here, you are initializing in loop anyway.
for(i=100;i>=40;i--)
{
if( i%3 == 0)
printf("%d\n", i);
}


getch();
return 0;
}

上面将从 99 开始到 42 结束的顺序打印数字。如果您想相反,只需将 i 初始化为 40 而不是 100,并设置循环条件 i<=100 并在每次迭代时递增 i。

另一个更简单的解决方案可以是这样,因为我们知道 40 到 100 之间 3 的第一个倍数是 42,:

#include<stdio.h>

int main()
{
int i=42;
while(i<=100)
{
printf("%d\n", i);
i+=3;
}
return 0;
}

这里我们简单地打印 42,然后添加 3 并打印,重复直到 i 大于 100,即,它将打印 42,45,48.... 继续添加 3。 ... 99,然后当它达到 102 时,它大于 100,因此它将跳出循环。

关于c - 找出 100 到 40 之间 3 的倍数的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24198726/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com