重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
#include stdio.h
网站建设哪家好,找创新互联!专注于网页设计、网站建设、微信开发、小程序设计、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了桑日免费建站欢迎大家使用!
int fun(int x)//
{
if(x2)
return 0;//返回0,非素数
for(int i=2;i*i=x;i++)
if(x%i==0)
return 0;
return 1;//返回1,素数
}
int main()
{
int n;
scanf("%d",n);
if(fun(n)==1)
printf("%d是素数\n",n);
else
printf("%d不是素数\n",n);
return 0;
}
判断质数的函数 中 在循环种定义的i 只能在循环中使用 跳出循环 还在判断 i == n 就错了
求公约数也是。 跳出循环就没有i 的定义了
简单说 就是作用域
既然三个函数都在函数中输出结果就没必要返回函数 全部换成void型
新标准main函数没有void型
这是我以前写过的判断质数的程序,希望对你有帮助。
#includestdio.h
int
prime(int
a)
{
int
i;
for(i=2;i=a/2;i++)
{
if(a%i==0)
break;
}
if(ia/2)
return
1;
else
return
0;
}
int
main(void)
{
int
x;
printf("请输入一个整数:");
scanf("%d",x);
if(prime(x))
printf("%d为素数\n",x);
else
printf("%d不是素数\n",x);
}
主要是加了break