Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 编写一个程序以继续整数直到一个素数_C - Fatal编程技术网

C 编写一个程序以继续整数直到一个素数

C 编写一个程序以继续整数直到一个素数,c,C,编写一个程序以继续读取正整数 直到遇到质数。假设至少输入一个数字 例如 请输入#:8 请输入#:9 请输入#:10 请输入#:11 谢谢你进入了黄金时段,再见 我遇到的主要问题是在素数出现之前的延拓。如果数字是素数,我必须测试的代码如下: // PRIME NUMBER TEST #include <stdio.h> int main () { int number, n, is_prime = 0; printf("Enter number: ");

编写一个程序以继续读取正整数 直到遇到质数。假设至少输入一个数字

例如

请输入#:8
请输入#:9
请输入#:10
请输入#:11
谢谢你进入了黄金时段,再见

我遇到的主要问题是在素数出现之前的延拓。如果数字是素数,我必须测试的代码如下:

// PRIME NUMBER TEST
#include <stdio.h>

int main () {

    int number, n, is_prime = 0;

    printf("Enter number: ");
    scanf("%d", &number);

    for (n=2; n<=number/2; n++) {

        if (number%n==0)
            is_prime = 1;

        while(is_prime == 1) {
              printf("Enter #: ");
              scanf("%d", &number);

    }
   }


    if (is_prime == 0)
        printf("%d is a prime number.\n", number);

     system("PAUSE");
    return 0;
}
//质数测试
#包括
int main(){
整数n等于素数=0;
printf(“输入编号:”);
scanf(“%d”和编号);

for(n=2;n您需要遍历代码并检查每个循环的不变量,这就是我所说的for while循环是由内而外的

// PRIME NUMBER TEST
#include <stdio.h>

int main () {
    bool is_prime = false;
    while(is_prime == false) {
        int number, n;
        printf("Enter #: ");
        scanf("%d", &number); // scanf is not recommended, but use it here anyway

        is_prime = true; // we assume so for now, also test for numbers < 2
        for (n=2; n<=number/2; n++) // this can be optimized, but leave as is anyway
           if (number%n==0)
              is_prime = false; // sorry it was not prime

    }
    printf("%d is a prime number.\n", number);
    return 0;
}
//质数测试
#包括
int main(){
bool是_prime=false;
while(is_prime==false){
整数,n;
printf(“输入#::”);
scanf(“%d”,&number);//不建议使用scanf,但仍在此处使用它
is_prime=true;//我们现在假设是这样,还要测试<2的数字

for(n=2;nWelcome to StackOverflow!始终发布到目前为止您拥有的代码,并非常具体地说明哪些代码不正常。甚至包括您尝试过的东西,无论它们是否有效。发布的代码位于粘贴箱链接中。我尝试过执行while循环,例如:while(is_prime==1)然后重新提示用户输入号码。我在您发布的代码中没有看到while循环。我已将其内联移动到问题中。通过编辑链接直接在问题中添加额外的注释…可能您的while循环和for循环是由内而外的…请尝试更改该选项。。。。