注册 登录
编程论坛 C语言论坛

需要帮忙修改一下错误

之二三 发布于 2023-08-16 09:52, 829 次点击
//需要输入一到一百内的数
//来逐一判断是否是素数



#include <stdio.h>
int main()
{
    int x,i=2;
    int Isprime=0;
    for(x=2;x<=100;x++){

        for(i=2;i<x;i++){
            if(x%i=0){
                break;
            }else{
                Isprime=1;
            }
        if(Isprime==1){
            printf("%d ",x);
        }
      }

    }
    return 0;
}
提示为if后x必须是可修改的 不太了解
5 回复
#2
rjsp2023-08-16 10:07
帮你排版了一下,再试试

程序代码:
#include <stdio.h>

int main( void )
{
    for( int x=2; x<=100; ++x )
    {
        int isprime = 1;

        for( int i=2; i<x; ++i )
        {
            if( x%i == 0 )
            {
                isprime = 0;
                break;
            }   
        }

        if( isprime == 1 )
            printf("%d ",x);
    }

    return 0;
}
#3
之二三2023-08-16 10:35
回复 2楼 rjsp
谢谢了 可以了 可以再帮我看一个吗 没有显示错误但运行的时候只有空白//前五十个素数

#include <stdio.h>
int main()
{
    int x=2;
    int count=0;
    for(;count<=50;x++){
        int i=2;
        int isPrime=1;
        for(;i<=x;i++){
            if(x%i==0){
                isPrime=0;
                break;
            }
        }
        if(isPrime==1) {
            printf("%d ",x);
            count++;
        }
    }
    return 0;
}
#4
s962812023-08-16 10:39
回复 3楼 之二三

程序代码:

int main() {
    int x = 2;
    int count = 0;
   
    for (; count < 50; x++) {
        int i = 2;
        int isPrime = 1;
        
        for (; i < x; i++) {
            if (x % i == 0) {
                isPrime = 0;
                break;
            }
        }
        
        if (isPrime == 1) {
            printf("%d ", x);
            count++;
        }
    }
   
    return 0;
}
#5
s962812023-08-16 10:45
Run 一下這個代碼你就會知道發生甚麼事了
程序代码:

#include <stdio.h>
int main()
{
    int x=2;
    int count=0;
    for(;count<=50;x++){
        printf("New for loop:\n");
        int i=2;
        int isPrime=1;
        for(;i<=x;i++){
            printf("x:%d, i:%d, x%%i=%d\n", x, i, x%i);
            if(x%i==0){
                isPrime=0;
                break;
            }
        }
        if(isPrime==1) {
            printf("%d ",x);
            count++;
        }
    }
    return 0;
}
#6
之二三2023-08-16 10:55
回复 5楼 s96281
所得斯 谢谢!
1