//定义一个prime()函数,判断某个正数是否是素数,如果是素数,则返回1,否则返回0;在主函数中输入一个正数并调用函数prime判断,
//最后根据返回值输出是否为素数的提示信息.
#include<stdio.h>
int prime(int n);
main()
{
int x,y;
printf("请输入一个正整数\n");
scanf("%d",&x);
y=prime(x);
if(y=1) printf("这个数是素数\n");
else printf("这个数不是素数\n");
}
int prime(int n)
{
int flag=0,i,j;
for(i=2;i<n;i++)
{
for(j=2;j<=i;j++)
{
if(n%i==0) flag=1;break;
}
}
return flag;
}
函数为什么不对
參考答案:if(y=1) printf("这个数是素数\n"); //改为if(y==1) printf("这个数是素数\n");
int prime(int n)
{
int flag=1,i,j; //flag=1
for(j=2;j<n;j++)
{
if(n%i==0) flag=0;break; //flage=0 非素数
}
return flag;
}