亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

為什么初始值(表達式1)必須是2?

為什么把m和n的初始值改為1后,結果就變成只有1不往下循環?

正在回答

3 回答

如果只把m改為1 的話是沒有影響的,但是如果你把n改為1了,任何數都可以被1整除,n的循環在1那里就符合條件直接break跳出循環了,n值不會增加,然后打印出來符合m=n的就只有1=1了。仔細看一下break條件吧

#include <stdio.h>

int main()

{

? ? int m, n;

? ? for(m=1; m<=50; m++)

? ? {

? ? ? ? for(n=1; n<=m; n++)

? ? ? ? {

? ? ? ? ? ? if( ? m%n==0? ? ) ? ? ? //什么條件下跳出當前循環

? ? ? ? ? ? ? ? break;? ? ? ? ? ? ? ? //這里應該退出當前循環了

? ? ? ? }

? ? ? ? if(m == n) ? //n循環結束后,如果m=n的話就輸出m

? ? ? ? ? ? printf("%d? ", m);

? ? }

? ? return 0; ? ?

}


0 回復 有任何疑惑可以回復我~

m<=50

n<..

遍歷完就停下來了

0 回復 有任何疑惑可以回復我~

1既不是質數也是合數。

0 回復 有任何疑惑可以回復我~
#1

慕粉0938398487 提問者

但是程序為什么會停下呢……
2017-05-11 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

為什么初始值(表達式1)必須是2?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號