重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
在程序的开头加入#includemath.h
成都创新互联主营白云鄂网站建设的网络公司,主营网站建设方案,app软件开发,白云鄂h5微信小程序搭建,白云鄂网站营销推广欢迎白云鄂等地区企业咨询
下面是fun函数:
int fun(int mm,int b[MAX])
{
int i,mmm,n=0;
for(mmm=2;mmm=mm;mmm++)
{
for(i=2;i=sqrt(mmm);i++)
if(mmm%i==0) break;
if(isqrt(mmm))
{
b[n]=mmm;
n+=1;
}
}
return n;
}
分析:
如果mm=1,外循环不启动,直接返回n,此时n=0
如果mm=2,外循环启动,内循环i=sqrt(mmm)的条件不满足,不启动,内循环下面的判断条件满足,于是让b[n]=mmm,n+=1,即找到一个符合条件的素数,此时b[n]既b[0]=2,然后n+=1,表示符合条件的素数的个数加1
同样,当mm=3的时候,内循环由于条件不满足,是不会执行的,但是在内循环下面的条件判断都满足,所以会把结果保存轮宽枣在n和b[n]里面,这时,外循环要执行2次
当mm3时,内循环也会启巧竖动,但是要等内循环结束之后i的值满足条件的才是素数,程序的可腊拆靠信完全可以放心
刚刚又重新分析了一遍代码,稍微改了改,没问题了