C語言中極複雜的問題,乙個C語言中極複雜的問題

時間 2022-09-27 11:20:09

1樓:

第乙個**是生成3~100以內的素數,不再詳述。

第二個**不是「不能 執行老」,而是沒有輸出,原因如下:

for(i=2;i<=100;i++)//迴圈1在執行到(*)的語句時,由於進入迴圈2時j=1,所以不論i為何值(i%j==0)總為真。於是break語句總執行,跳出迴圈2。注意此時變數j總=1,而在迴圈1中的所有i均大於1,所以(**)不會執行,自然在螢幕上沒有輸出。

如果想驗證,可以新增除錯語句(***),或者利用ide的步進除錯功能驗證,呵呵。

/*本人菜鳥*/

2樓:寶貝寧越

您好!首先這兩個程式都是正確的,都能夠執行。

當i=1,j=2 輸出結果是3.7.11.15.19.23.27......

但是當i=2,j=1時,2%1=0,則滿足if(i%j==0)break語句跳出迴圈,不再進行迴圈,所以結果為空。

3樓:匿名使用者

你的第二個程式裡,剛開始內部迴圈時:j=1,任何數除以1的餘數都等於0,所以會break;這樣一來j就只能取1,而i最小等於2不可能相等了,自然不會有i==j,最後輸出乙個空行,然後等待輸入就結束程式

4樓:匿名使用者

呵呵 這哥們,我連c語言都沒搞會 還是來湊個熱鬧

C語言問題,乙個C語言問題

錯誤是 d 了 因為陣列名s,代表字串陣列的首位址,s指向的位址就是s 0 的位址。gets s 正確則gets s 0 也是正確的,所以 a,c 正確。而scanf s s 1 實際上只是不從s 0 開始,而是從s 1 開始賦值而已,既然只輸給它5個字元,所以從s 1 開始賦值也不會過界,則b是正...

C語言問題,乙個C語言問題

include void main printf 它們的和為 d sum include int main if i 3 0 return 0 include main printf n printf sum d sum system pause include int main printf su...

c語言的問題,C語言的一個問題

這是中國mooc上的題目吧,你的程式其實是正確的。知道為何 說 格式錯誤 了嗎?include int main 上面這個程式經驗證是可通過的。include int main 而原先我的這個程式卻不行!0分!覺得明明是同一套程式吧,他喵的我發現運算子與變數之間要空格,評分系統才認你的程式,等號兩邊...