c語言for循環嵌套if語句
兩種方法,一種是重新賦值,程序段如下 for(i=0;i 如果想實現你想要的功能你的程序要做下修改,添加一個else: int isp(int m) { int i; for(i =2;iif (m%i==0) return 0; else return 1; } 程序的功能:m對小于自己的數取余(i=2,3,……,(m-1)),如果余數為0,返回0;如果余數不為0,返回值為1。返回值可以繼續在后其他的函數中調用。 區別在于執行次數的差異 for嵌套if,for循環要循環多少次,就要執行多少次if判斷。 if嵌套for的話,則是如果滿足if判斷才會執行,for循環的內容。如果不滿足if判斷,則不會執行for判斷。 for循環:編程中用于循環處理的語句。Java的for語句形式有兩種:一種是和C語言中的for語句形式一樣,另一種形式用于在集合和數組之中進行迭代。 有時候把這種形式稱為增強的for(enhanced for)語句,它可以使循環更加緊湊和容易閱讀。它的一般形式為: for(;;) 語句; 初始化總是一個賦值語句,它用來給循環控制變量賦初值;條件表達式是一個關系表達式,它決定什么時候退出循環;增量定義循環控制變量每循環一次后按什么方式變化。 這三個部分之間用";"分開。 雖然不知道你用的是什么語言,不過各種語言應該是類似的.在你程序中:如果不用for嵌套而是把語句寫上9遍:LET I=1For J From 0 To 9 If 10J+I=J^2-I^2 Then Print 10J+I End If End For LET I=2For J From 0 To 9 If 10J+I=J^2-I^2 Then Print 10J+I End If End For LET I=3For J From 0 To 9 If 10J+I=J^2-I^2 Then Print 10J+I End If End For 。 LET I=9For J From 0 To 9 If 10J+I=J^2-I^2 Then Print 10J+I End If End For 如此.。 兩種方法,一種是重新賦值,程序段如下 for(i=0;i<Maxi;i++) for(j=0;j<Maxj;j++) if(true) { i=-1; break; //從此處跳出本層循環,由于賦值i=-1,執行完 //break語句之后,執行外層循環i++指令,使得 //i=0;外層循環相當于重新開始,j的值無需處理, //因每次進入內層循環,j值均會被for語句賦初值0 } 第二種方法是無條件轉移指令: sign: for(i=0;i<Maxi;i++) for(j=0;j<Maxj;j++) f(true) goto sign; //條件為真跳轉至sign語句 一般情況下,應當避免使用goto無條件跳轉指令,因為很多人認為程序可讀性會因為goto的引入而變差,但是在不少情況下goto可以使得程序代碼簡單,效率提高,個人認為適當使用goto指令并無不可,樓主可自己作出選擇。 { int j,i,k=0; for(j=11;j<=30;j++) { if(k%10==0) printf("\n"); for(i=2;i<j;i++) if(!(j%i)) break; if(i>=j-1) { printf("%d\t",j); k++; } } } 請看一下括號的匹配,if是包含在for循環里的,只是用于判斷,根本用不到else。 轉載請注明出處華閱文章網 » for語句的if嵌套 c語言中for語句與if的嵌套,下面的程序如何運行
for嵌套if和if嵌套for的區別是什么
for循環語句嵌套怎么算?ForIFrom1To9ForJFrom0To9If10J+I=J^2-I^2
c語言for循環嵌套if語句
c語言if 和for語句的嵌套問題,怎么做啊