C 找出100到40之间3的倍数

C 找出100到40之间3的倍数,c,loops,for-loop,C,Loops,For Loop,正如标题所说,我必须确定数字40和100之间的倍数。我必须使用 #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; } #包括 #包括 int main()

正如标题所说,我必须确定数字40和100之间的倍数。我必须使用

  #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;
    }
#包括
#包括
int main()
{
int n=3;
int i=100;
对于(i=100;i>=40;i--)
printf(“%d”,n*n);
getch();
返回0;
}

这就是我得到的。但它只打印了数字9很多次。如何修复它,使其打印出3的所有倍数?

使用
mod
相反,在您的情况下,使用它来确定数字是否可被3整除
n=3但您可以使用相同的方法查找任意数字的倍数

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

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

      if ((i % n) == 0)   printf(" %d ",i);
     getch();
     return 0;
    }
#包括
#包括
int main()
{
int n=3;
int i=100;
对于(i=100;i>=40;i--)
如果((i%n)==0)printf(“%d”,i);
getch();
返回0;
}
试试这个

int n=3;
for(int i=100; i>=40; i--)
{
    if(i%n == 0 )
        printf("%d", i);
}

你为什么要打印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;
   }
#包括
#包括
int main()
{
//int n=3;不需要n=3,我们只使用3本身。
int i;//此处不需要初始化为100,您仍在循环中初始化。
对于(i=100;i>=40;i--)
{
如果(i%3==0)
printf(“%d\n”,i);
}
getch();
返回0;
}

上面的数字将从99开始,以42结束,反向打印。如果你想换一种方式,只需将i初始化为40而不是100,然后让循环条件iIt打印数字49?它应该多次打印9,因为您在循环中打印
n*n
,并且从不更改
n
的值。您还想了解倍数的含义-它并不总是一个平方数。它如何打印
49
?你的
printf
是错误的,首先检查`
如果(i%3==0)
然后检查
printf(“%d”,i)。我打错了号码。我的脑子不知道怎么解决这个问题,而且我一直很难让它工作。谢谢!信息技术helped@jtman虽然我更喜欢
UpVote
&
接受的答案,而不是:)
#include<stdio.h>

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