开发平台(Platform): (Ex: VC++, GCC, Linux, ...)
DevC++
我现在在解高中生解题系统
里面的质数问题
为了要判断输入的数字是否为质数
并且有可能有两万个数字要判断
为了加快速度 因此有建表机制
逻辑:先判断表内的数字有没有能整除的 有就不是质数
如果表内没有 再从1到X-1都整除一次看看 如果有能整除的 就不是质数
如果以上两个条件都不行 那就是质数 将这个质数存到prime阵列里面
以后就可以拿出来比对
喂入的资料(Input):
各种自己随便乱打的整数
预期的正确结果(Expected Output):
如果是质数应该就会有质数出来
不是质数就会有非质数出来
错误结果(Wrong Output):
输入之后毫无反应
程式码(Code):(请善用置底文网页, 记得排版)
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[]) {
int prime[20000];
int number;
int i=0;
int j;
while(1);
{
scanf("%i",&number);
for (j=0;j<=i;j++)
{
if(number%prime[j]==0)
{
printf("非质数");
continue;
}
}
for (j=2;j<=number;j++)
{
if(number%j==0)
{
printf("非质数");
continue;
}
}
printf("质数");
prime[i]=number;
i++;
}
return 0;
}
补充说明(Supplement):
我认为可能是我while循环里面的scanf出问题
只是不知道该怎么改