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;
用c語言中的for迴圈輸出菱形,C語言程式設計,用一個for迴圈列印菱形
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...
c語言中什麼叫死迴圈?怎麼避免,C語言中什麼叫死迴圈?怎麼避免?
就是迴圈條件總是滿足,無法退出迴圈啊 比如最簡單的 while 1 有時候不注意就容易引起這種情況 int i 0 while i 10 死迴圈就是這樣的 int x 0 while x 0 也就是說沒有關鍵性的結束迴圈的語句,導致沒有終止的執行迴圈體裡面的程式段,就是死迴圈 沒有迴圈終止條件,或者...
C語言編寫函式,如何在C語言中定義一個函式?
這個hanshu 用來從20個隨機數中推匯出15個不重複的隨機數 正數 演算法邏輯有問題。看這一句 a i a i 1 想做什麼?它在內迴圈裡 迭代數是j不是i 當前後兩數相同時它總是把後一個數賦值給前一個數,猜想你大概是想不斷的把後面的數賦給i位置的數然後做相等測試,而這裡的i就沒有動 那個con...