|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
求100--200之间的素数,并以每行10个数的格式输出,哪位好心人帮忙看一下,我是哪里错了?
#include <stdio.h>
#include <math.h>
void main()
{
int n,k,i,m;
for(n=100;n<=200;n++)
{ m=0;
k=sqrt(n);
for(i=2;i<=k;i++)
{
if(n%i==0)
{
break;
}
}
if(i>k)
{
printf("%5d",n);
m++;
if(m%10==0)
{
printf("\n");
}
}
}
}
直接把for循环内的 m = 0 拿到循环外就可以了。
在循环内的话,每次循环m都被赋值为0,不可能有m%10==0的情况
- #include <stdio.h>
- #include <math.h>
- int main()
- {
- int n, k, i, m;
- m = 0;//就是这一行,从for循环内拿出来就可以了
- for (n = 100; n <= 200; n++)
- {
-
- k = sqrt(n);
- for (i = 2; i <= k; i++)
- {
- if (n % i == 0)
- {
- break;
- }
- }
- if (i > k)
- {
- printf("%5d", n);
- m++;
- if (m % 10 == 0)
- {
- printf("\n");
- }
- }
- }
- return 0;
- }
复制代码
|
|