helenl 发表于 2022-1-6 10:37:22

问题求助

#include<stdio.h>
#define N 10
int main()
{
        int i,j,num,flag=0;
        printf("please input 1~10: \n");
        for(i=0;i<N;i++)
        {
                num=i+1;
        }
        for(i=1;i<N;i++)//从2开始判断
        {
                for(j=2;j<=N;j++)//i=1,num=2,j=3;i=2,num=3;2 4 6
                {
                        if(num==j)
                        {
                                continue;
                        }
                        if(num%j==0)
                        {
                                1==flag;
                                break;
                        }
                       
                }
                if(flag==0)
                {
                        printf("\n该数为素数%d\n",num);
                }
        }
        return 0;
}
为什么if(num%j==0)
                        {
                                1==flag;
                                break;
                        }                              中flag不执行

丶忘却的年少o 发表于 2022-1-6 10:46:03

1==flag;你是要给flag赋值1是吗?
flag = 1;    // 这是赋值
1 == flag;    // 这是对比flag的值
页: [1]
查看完整版本: 问题求助