printf("enter number:");
scanf("%d",&number);
for(i=2;i<number;i++){
if(number%i==0)
printf("your number isn't prime\n");
else
printf("your number is prime\n");
}
我写了这段代码。该代码可以运行,但是如果输入10,它会打印很多次,而不是质数。
答案 0 :(得分:1)
提示1:尝试使用标志(但是代码会变得更长,不必要!) 提示2:只需在第一个printf之后放一个break语句;)
答案 1 :(得分:0)
如DyZ的评论中所述,一旦知道数字不是质数,就应该中断循环,并在循环后才报告数字是质数。
此外,您不必检查已检查的除数的倍数。如果您的数字不能被2整除,则不能被2的任意倍数整除,例如4、6、8等。
另外,请在prime numbers
上检查以下已回答的问题