主题:T T菜鸟求助,找不出错误……
下面这段是我编的
#include "stdio.h"
#include "math.h"
int main(void)
{
int count, i, j, k, m, n;
int ri,repeat;
scanf("%d", &repeat);
for(ri = 1; ri <= repeat;ri++){
scanf("%d%d", &m, &n);
printf("primes:\n");
count=0;
for(i=m;i<=n;i++){
k=i;
for(j=2;j<=k;j++){
if(k%j==0)
break;
if(j>k/2){
printf("%d ", i);
count++;
}
}
if(count==6){
printf("\n");
count=0;}
}
}
}
build出来是这么一段东西
【m=1,n=35时】
3 5 5 7 7 7
11 11 11 11 11 13 13 13 13 13 15 17 17 17 17 17 17 19 19 19 19 19 19 19 19
19 23 23 23 23 23 23 23 23 23 23 23 29 29 29 29 29 29 29 29 29 29 29 29 29 29 3
1 31 31 31 31 31 31 31 31 31 31 31 31 31 31
题目要求是这样的……
输入:
2 (repeat=2)
1 35 (m=1, n=35)
2 10 (m=2,n=10)
输出:
primes: (1到35之间的素数)
2 3 5 7 11 13
17 19 23 29 31
primes: (2到10之间的素数)
2 3 5 7
麻烦哪位高手帮忙看下哪里错了
在deburg的时候i=2直接跳过了为啥T T……
#include "stdio.h"
#include "math.h"
int main(void)
{
int count, i, j, k, m, n;
int ri,repeat;
scanf("%d", &repeat);
for(ri = 1; ri <= repeat;ri++){
scanf("%d%d", &m, &n);
printf("primes:\n");
count=0;
for(i=m;i<=n;i++){
k=i;
for(j=2;j<=k;j++){
if(k%j==0)
break;
if(j>k/2){
printf("%d ", i);
count++;
}
}
if(count==6){
printf("\n");
count=0;}
}
}
}
build出来是这么一段东西
【m=1,n=35时】
3 5 5 7 7 7
11 11 11 11 11 13 13 13 13 13 15 17 17 17 17 17 17 19 19 19 19 19 19 19 19
19 23 23 23 23 23 23 23 23 23 23 23 29 29 29 29 29 29 29 29 29 29 29 29 29 29 3
1 31 31 31 31 31 31 31 31 31 31 31 31 31 31
题目要求是这样的……
输入:
2 (repeat=2)
1 35 (m=1, n=35)
2 10 (m=2,n=10)
输出:
primes: (1到35之间的素数)
2 3 5 7 11 13
17 19 23 29 31
primes: (2到10之间的素数)
2 3 5 7
麻烦哪位高手帮忙看下哪里错了
在deburg的时候i=2直接跳过了为啥T T……