求助,该如何判断这个函数: int Prime(int x) { int i, flag = 1;?

判断素数的函数:
int Prime(int x)
{
int i, flag = 1;
int squareRoot = (int)sqrt(x);
if (x <= 1) flag = 0;
for (i = 2; i <= squareRoot && flag; i++)
{
if (x % i == 0) flag = 0;
}
return flag;
}
中的squareRoot && flag指的是什么?
而且为什么有些函数需要用int定义有些用void定义?区别是什么?求教了

手掌心
浏览 628回答 2
2回答

犯罪嫌疑人X

squareRoot 是平方根值, 2到平方根值是判断素数因子的范围, 这是为提高效率的方法flag是表示是否是素数 0:不是, 1: 是函数定义用什么类型是根据实际情况来的,需要返回什么类型的数据,就定义什么类型的函数,如果没有要返回的,就定义为void .

慕姐4208626

flag=1;fork=2:sqrt(x)ifmod(x,k)==0flag=0;break;endendif(flag)sprintf("%disaprime")elsesprintf('%disnotaprime')end
打开App,查看更多内容
随时随地看视频慕课网APP