void fun(int m,int *k,int ss[]){int i,j,n=0;for(i=4;i<m;i++){for(j=2;j<i;j++)? ? ?if(i%j==0) break;? ? ?if(j<i) ss[n++]=i;? ?*k=n;}}求解!!
2 回答
已采納

噼喱啪啦
TA貢獻392條經驗 獲得超170個贊
判斷m是不是素數,如果m不能被 2 ~ 根號m間任一整數整除,m是素數
所以判斷應該這樣來,這只是一種方法.
做個循環讓i從2開始+1,一直到m,每次判斷,if(m%i==0),如果成立就保存m的值到w
for(int i=2;i<m;i++) ? //m可以優化
{
? ? if(m%i==0)
? ? w=i;
}
然后判斷w的值,如果w的值在2~根號m直接,則代表m可以被2~根號m之間的某一個整數整除,則不是素數.
反之則是素數.
? ??
- 2 回答
- 0 關注
- 1400 瀏覽
添加回答
舉報
0/150
提交
取消