问答详情
源自:4-15 结束语句之continue语句

判断素数,求大神告知崔在何处

#include<stdio.h>

#include<math.h>

void main()

{

int n,k,i;

k=(int)sqrt(n);

printf("请输入一个整数:");

scanf("%d",&n);

while(n<=0)

printf("请重新输入一个整数:");

scanf("%d",&n);

for(i=2;i<=k;i++)

{

if(n%i==0)

printf("%d不是素数\n",n);

else

printf("%d是一个素数\n",n);

}

}


提问者:曾小妍 2016-01-03 19:46
微课

个回答

  • 努力提升
    2016-01-04 15:17:11

    int main()

    {
        int n,i,flag = 1;
        
        printf("请输入一个整数:");
        
        scanf("%d",&n);
        
        while(n<=0){
            
            printf("请重新输入一个整数:");
        
        scanf("%d",&n);
        }
        
        for(i=2;i < n;i++)
            
        {
            
            if(n%i == 0){
                
                flag = 0;
            }
        }
        
        if (flag == 0) {
            printf("%d不是一个素数",n);
        }
        else{
             printf("%d是一个素数",n);
        }
        
    }

    这样写就可以了

  • 嘀咕01
    2016-01-03 20:10:59

    #include<stdio.h>
    #include<math.h>
    void main()
    {
        int n,k,i;
        printf("请输入一个整数:");
        scanf("%d",&n);
        while(n<=0)  
        {
            printf("请重新输入一个整数:");
            scanf("%d",&n);
         }     //while循环注意括号
         k=(int)sqrt(n);  //这个n没有初始化啊
        for(i=2;i<=k;i++)
        {
            if(n%i==0)
                printf("%d不是素数\n",n);
            else
                printf("%d是一个素数\n",n);
        }
    }           //没有编译运行,你自己试试看