1樓:班翠同堯
c語言中的for迴圈語句使用最為靈活,不僅可以用於迴圈次數已經確定的情況,而且可以用於迴圈次數不確定而只給出迴圈結束條件的情況,它完全可以代替while語句.
for(表示式
1;表示式
2;表示式
3)語句
它的執行過程如下:
(1)先求
表示式1.
(2)求
表示式2
,若其值為真(值為非0),則執行for語句中指定的內嵌語句,然後執行下面第三步
做若為假(值為0),則結束迴圈,轉到第5步.
(3)求解
表示式3
(4)轉回上面第(2)步驟繼續執行;
(5)結束迴圈,執行for語句下面的一個語句;
for(迴圈變數賦初值;迴圈條件;迴圈變數增值)語句如
for(i=1;i<=100;i++)sum=sum+i;
它的執行相當於
i=1;
while(i<=100)
顯然,用for語句更簡單、方便。
說明:(1)for語句的一般形式中的"
表示式1
"可以省略,此時應在for語句之前給迴圈變數賦初值.注意省略表示式1時,其後的分號不能省略.如for(;i<=100;i++);
(2)如果
表示式2
省略即不判斷迴圈條件,迴圈無終止地迴圈下去,也就是認為表示式2始終為真.
例如:for(i=1;;i++);
相當於i=1;
while(1)
(3)表示式3
也可以省略,但此時程式設計者應另外設法保證迴圈能正常結束.如:
for(i=1;i<=100;)
這個例子的迴圈增量沒有放在表示式三的位置
而是作為迴圈體的一部分
其效果是一樣的.
(4)可以省略
表示式1
和表示式3
,只有表示式2
即只給迴圈條件.
如for(;i<=100;)
這個相當於
whlie(i<=100)
(5)三個表示式都可以省略,如:
for(;;)語句
相當於while(1)語句
即不設初值
不判斷條件(認為
表示式2
為真值)迴圈變數不增值,無終止的執行迴圈體.
(6)表示式1
也可以是設定迴圈變數初值的賦值表示式,也可以是與迴圈變數無關的其他表示式.如:
for(sum=0;i<=100;i++)
for(sum=0,i=0;i<=100;i++)
2樓:匿名使用者
就給你個簡單的 #include int main(void)return 0;}
3樓:匿名使用者
//例如實現1加到100的和!#include main() printf("1加到100=%d",num);}
c語言中for迴圈巢狀if的例題
4樓:聽不清啊
#include
int main()
else printf("no\n");
} printf("正確率=%d%%\n",n*20);
return 0;}
c語言程式設計題for迴圈語句
5樓:許詩文
1.作為示例,以求解下面數學式為例:
sum = 1 - 3 + 5 - 7 + ...-99 + 101;
首先,需要分析數學規律,就數學式中每一項的絕對值而言,可以看成 a(n) = 2 * n - 1 其中,n = ,而就每一項的符號而言,可以發現,當 n 為偶數時,對應的項為負號;當 n 為奇數時,對應項符號為正號。
2.建立工程、檔案,簡單配置,編寫如下**:
#include
int main(void)
else
sum += (2*i-1)*s;
}printf("sum of (1-3+5-7+...-99+101) is: %d\n",sum);
return 0;
}其中,s 就是符號控制,其中for迴圈累加每一項。
3.編譯、連結、執行程式,執行結果如下所示,可以看到執行結果sum = 51.
4.合理運用for迴圈可以簡化**設計,增強**可讀性,縮減**篇幅,利用迴圈可以處理重複並且有規律性的問題,比如規則圖形的列印,陣列遍歷、物件賦值等,合理運用for迴圈需要先理解for迴圈的語法:
for(表示式1;表示式2;表示式3)end
6樓:匿名使用者
假設有4名同學,統計3門課的平均成績(數字可以更改),**如下:
#include "stdio.h"
#define n 4
void p();
struct student
stu[n];
void main()}
7樓:
int a=0,b=100,i,s,n,add=0;
scanf("%d",&s);//學生人數for(i=0;ia)a=n;
if(n果要浮點的 改下變數型別和輸入輸出型別就可以了
8樓:匿名使用者
main()
printf("最大%f,最小%f,平均成績%f",max,min,sum);}
9樓:maka醬
max=a[0];
min=a[0];
sum=a[0]
for(i=1;imax)
max=a[i];
if(a[i] min=a[i] sum+=a[i];} 10樓:多皎惠涵亮 #include #include #include int main (void) }if (isprime==1) sum+=i; }printf ("%d\n", sum); getch (); /*螢幕暫留*/ return 0; }執行結果 c語言中for迴圈怎麼理解? 11樓:楓璽 for迴圈是程式語言中一種開界的迴圈語句,而迴圈語句由迴圈體及迴圈的終止條件兩部分組成,for迴圈一般形式為:for(單次表示式;條件表示式;末尾迴圈體)。 執行的中間迴圈體可以為一個語句,也可以為多個語句,當中間迴圈體只有一個語句時,其大括號{}可以省略,執行完中間迴圈體後接著執行末尾迴圈體 。執行末尾迴圈體後將再次進行條件判斷,若條件還成立,則繼續重複上述迴圈,當條件不成立時則跳出當下for迴圈。 for迴圈例項: # include int main(void) printf ("sum = %d\n", sum); return 0;} 假如 n=4,當 i=1 時,m=1,sum=1。當 i=2 時,m=1×2,sum=1+1×2。當 i=3 時,m=1×2×3,sum=1+1×2+1×2×3。 當 i=4 時,m=1×2×3×4sum=1+1×2+1×2×3+1×2×3×4。 擴充套件資料 for迴圈注意事項: 1、for迴圈的**不僅可以寫一句,也可以寫多句(保證第二部分的返回值是布林值) 2、for迴圈的三個部分都可以省略。第一部分省略表示不初始化;第二部分省略表示不判斷,預設值為true;第三部分省略表示省略後什麼也不執行。 3、小迴圈在外,大迴圈在內、 4、如果for迴圈有條件判斷,可以將條件放到for迴圈外。 5、 for迴圈中的"單次表示式"、"條件表示式"和"迴圈體語句"都是選擇項, 即可以預設成只剩下「;」的空語句, ";"不能預設的原因是編譯格式如此,預設了編譯器不認識而會報錯。 12樓:guxuecan劍 以題目中的程式為例子: for(i=0;i<10;i++) a+=i; for迴圈裡面的三個引數為三個表示式: 第一個控制表示式」i=1「在迴圈開始時執行,且只執行一次。 第二個控制表示式必須是一個邏輯表示式,且在每次迴圈迭代開始重複前計算。 第三個控制表示式」i++「在每一次迴圈迭代結束時執行。 只有第二個邏輯表示式為真時,語句塊內的語句才執行。 13樓:匿名使用者 1、for是c語言中的一個關鍵字,主要用來控制迴圈語句的執行。 2、下面舉例說明for語句的使用方法: int i; for(i=0; i<3; i++) // i=0是初始化部分;i<3是迴圈判斷條件部分(當滿足此條件時才進入執行for迴圈中的語句);i++是執行完迴圈體語句後的操作 // 上面的for語句就是控制輸出3次helloworld 14樓:匿名使用者 a+=i就是a=a+i, for迴圈語句就是:i=0時,a=a+0;再執行i++,即i=1;再執行a=a+i,一直到i=9,為止,能看懂嗎? 15樓:匿名使用者 初始時,i=0,開始迴圈。 第一步:a+=i;然後i++,i變成1,1<10,繼續迴圈; 第二步:a+=i;然後i++,i變成2,2<10,繼續迴圈; 。。。第九步:a+=i;然後i++,i變成9,9<10,繼續迴圈; 第十步:a+=i;然後i++,i變成10,10<10不成立,迴圈結束 16樓:匿名使用者 a相當於一個累加器 每次都用a和i的值相加 然後再把結果存在a中 ,直到i=10為止 a=a+0; a=a+1; a=a+2; a=a+3; a=a+4; a=a+5; a=a+6; a=a+7; a=a+8; a=a+9; 17樓:匿名使用者 for從i=0開始,如果i<10,進入迴圈體 a+=i;結束之後,i++;然後繼續判斷i<10,然後進入迴圈體,a+=i。。。。。如此迴圈,最後得到a=0+1+2+……+9 18樓: 你只要搞清楚for迴圈3個語句的含義應該就懂了第一個是初始化,第二個是條件語句,第三個是自處理語句; 迴圈時第一個語句只使用一次,然後判斷是否滿足第二個語句,滿足則進入迴圈體執行a+=i,然後i自加1,再判斷是否滿足第二個語句,滿足則進入迴圈體執行a+=i,一直到i不滿足i<10了,迴圈跳出。 開始時,i=0,開始迴圈。假設a初始化為0,第一步:a+=i;然後i++,a=0,i變成1,1<10,繼續迴圈; 第二步:a+=i;然後i++,a=1,i變成2,2<10,繼續迴圈; 。。。第九步:a+=i;然後i++,a=36,i變成9,9<10,繼續迴圈; 第十步:a+=i;然後i++,a=45,i變成10,10<10不成立,迴圈結束 19樓:匿名使用者 第一次i=0,a=a+i,後面依次i=1,2,3。。。9,a=a+i; include int main for a 1 a i a for b 0 b i 2 b for c a c i c printf n for j 1 j a j for d 1 d j d for e a e j e for f a 1 f j f for g 0 g j 1 g printf... 就是迴圈條件總是滿足,無法退出迴圈啊 比如最簡單的 while 1 有時候不注意就容易引起這種情況 int i 0 while i 10 死迴圈就是這樣的 int x 0 while x 0 也就是說沒有關鍵性的結束迴圈的語句,導致沒有終止的執行迴圈體裡面的程式段,就是死迴圈 沒有迴圈終止條件,或者... 這個hanshu 用來從20個隨機數中推匯出15個不重複的隨機數 正數 演算法邏輯有問題。看這一句 a i a i 1 想做什麼?它在內迴圈裡 迭代數是j不是i 當前後兩數相同時它總是把後一個數賦值給前一個數,猜想你大概是想不斷的把後面的數賦給i位置的數然後做相等測試,而這裡的i就沒有動 那個con...用c語言中的for迴圈輸出菱形,C語言程式設計,用一個for迴圈列印菱形
c語言中什麼叫死迴圈?怎麼避免,C語言中什麼叫死迴圈?怎麼避免?
C語言編寫函式,如何在C語言中定義一個函式?