1樓:vancouver華
步驟分解:
設 1 為亮,0 為滅。
將燈全部關閉。
將凡是2和2的倍數的燈開啟。
將凡是自身的倍數(包括自身)的燈作相反處理。
重複 3 直至結束。
遍歷所有亮的燈泡輸出。
我對**進行了一點可讀化處理。
#include
#include
int main()
; // 這裡相當於步驟 1,同時也相當於第一個將燈泡關閉的人。
int i,j,n,w; // w 是廢的變數,無意義。
w=0;
scanf("%d",&n);
for(j=2;j<=n;j++) // 迴圈的第一次是步驟 2,之後的迴圈都屬於步驟 3。
else a[i]=a[i]; // 這一句跟樓上說的一樣,寫了些什麼鬼。}}
for(i=1;i<=n;i++) // 這裡是最後的遍歷輸出,遍歷所有等於值 1 的燈泡輸出即可。
return 0;
}最後,原**非常非常非常難以閱讀,記住**是寫出來給人看的,不要隨意忽略花括號,如果 if-else 語句為了帥氣要忽略花括號的話,請務必只寫一行,並且一定要放在同一行。
2樓:聽不清啊
#include
#include
int main()
; //這裡賦值要注意,,表示第一人已把所有燈都關了int i,j,n,w;
w=0;
scanf("%d",&n);
for(j=2;j<=n;j++) //如樓上所說從2開始就好,第j個人操作開關
}for(i=1;i<=n;i++) //操作完畢,檢查所有的燈,a[i]==1的是開啟的
return 0;}
求大神解釋一下這個c語言程式怎麼執行的啊啊和為什麼..看不懂啊
3樓:空空
for(m=2;m<=50;m++)//從2到50列舉數字m//如果沒
break;的話m應該屬等於n,否則m不是質數if(m==n)//如果沒break
printf("%d ",m);//輸出}
4樓:
建議樓來主善用百度搜尋,但是源為了積分我還是回bai答du一下c語言的執行教程zhi:http://jingyan.
關於**內
dao容解釋:
把數從2~50大遍歷一次,每次遍歷的下面跟著對當前數值n進行2~n-1的遍歷,使得n%m不等於0,即為素數。
c語言選擇題,看不懂答案。求解釋
函式由函式首部與函式體 函式首部包括 函式型別 函式名 引數型別 引數名 函式屬性 你這個首部變數是一個double陣列變數,形參的型別要和實參儘量相一致,mian函式裡fun函式的引數是a,定義為a,那是一個陣列所以d錯 d的形參是一個double型變數 這個是函式呼叫的知識 陣列做實參,形參為陣...
還請各位大哥解釋一下這個c語言程式,看不懂
定義了抄一個int型別變數n以及一個int型別的指標k,同時將k指向n,此時 k的就是n 那麼如果要讀取一個值賦給n可以寫作 scanf d n 因為k指向n,k n,那麼k n 所以可以寫成scanf d k include 包含標頭檔案,如scanf和printf函式的原型就被放在這個檔案 vo...
verilog這個語句看不懂求解釋
if dis en 1 b0 wr trig 1 b1 就是先判斷dis en 1 b0是否成立,成立則為1,否則為0 wr trig 1 b1同理。dis en 1 b0 wr trig 1 b1 作為if的判斷條件,結果為1的時候,才會執行,也就是要求 dis en 1 b0 和 wr trig...