m和n的值已经在main函数中读取了,在Prime函数中就不需要再读取了,scanf_s函数删掉就可以了。
你的Prime函数判断素数的方法不对。代码修改如下:
#include <stdio.h>
void Prime(int m,int n)
{
int i,j;
//如果m>n,就交换m和n
if(m>n)
{
i = m;
m = n;
n = i;
}
for (i=m;i<=n;i++)
{
for(j=2;j<i;j++)
{
if(i%j == 0)
break;
}
if(j==i)
printf("%d ",i);
}
}
int main()
{
int m,n;
scanf_s("%d %d",&m,&n);
Prime(m,n);
return 0;
}
子函数里scanf_s("%d%d",&m,&n)删掉
子函数求素数写的不对啊