『壹』 c語言中for循環怎麼理解
for循環是編程語言中一種開界的循環語句,而循環語句由循環體及循環的終止條件兩部分組成,for循環一般形式為:for(單次表達式;條件表達式;末尾循環體){中間循環體;}。
執行的中間循環體可以為一個語句,也可以為多個語句,當中間循環體只有一個語句時,其大括弧{}可以省略,執行完中間循環體後接著執行末尾循環體 。執行末尾循環體後將再次進行條件判斷,若條件還成立,則繼續重復上述循環,當條件不成立時則跳出當下for循環。
for循環實例:
# include <stdio.h>
int main(void)
{int n = 0;
int i = 0;
int m = 1;
int sum=0;
printf("請輸入n的值:");
scanf("%d", &n);
for (i=1; i<=n; ++i){
m = m * i;
sum = sum +m;}
printf ("sum = %d ", 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。
(1)c語言for循環的疑惑擴展閱讀
for循環注意事項:
1、for循環的代碼不僅可以寫一句,也可以寫多句(保證第二部分的返回值是布爾值)
2、for循環的三個部分都可以省略。第一部分省略表示不初始化;第二部分省略表示不判斷,默認值為true;第三部分省略表示省略後什麼也不執行。
3、小循環在外,大循環在內、
4、如果for循環有條件判斷,可以將條件放到for循環外。
5、for循環中的"單次表達式"、"條件表達式"和"循環體語句"都是選擇項, 即可以預設成只剩下「;」的空語句, ";"不能預設的原因是編譯格式如此,預設了編譯器不認識而會報錯。
『貳』 C語言中循環語句for的疑惑
分類: 電腦/網路 >> 程序設計 >> 其他編程語言
問題描述:
for(i=0;i<3;i++)
{
for(j=0;j<5;j++)
{ scanf("%d",&a[j][i]);
s=s+a[j][i];}
v[i]=s/5;
s=0;
}
對於這種雙循環語句程序是如何執行的?
for(i=0;i<3;i++)先判斷i是否<3(一定<3),是則專向下一條for(j=0;j<5;j++),這時又要判斷當j<5,j<5轉向 scanf("%d",&a[j][i]);及後面的程序,那麼後面的執行完後對j+1再來判斷一直到j<5為條件非,才停止執行後面程序。
問題來了,第一句的for(i=0;i<3;i++)是不是要到後面的for(j=0;j<5;j++)全部的循環完後才它才進行第二次循環?還有一個問題就是我上面這樣敘述它的過程對不對?
解析:
你寫的挺多 我沒看 反正你就記住了 先執行內循環 然後執行外循環就行了 先執行內循環 一次內循環執行完了 才能輪到外循環
『叄』 c語言 for循環的疑惑
n可能為全局變數,問題不在這兒,找全程序的問題。
『肆』 C語言for循環的問題
因為i等於n的時候是從一開始加的兒,i等於n加一的時候是從n加一,也就是二開始加的
『伍』 c語言中 for循環的問題
可以在出了這個循環後的另一個for循環中重復使用
這是沒有問題的。
第一個循環之後,i是9
但第二個for循環的首語句重新定義了i=1,沒有問題,只要i是有效使用范圍(作用域)。
請採納答案,支持我一下。
『陸』 C語言中的for循環,我怎麼不懂看了很多遍了!
for語句的一般格式:for(初始條件;結束條件;循環變數的增值){循環的語句。。。。}
其中的循環變數的增量,可以放到循環語句裡面去。
例如:求1+2+3+。。。+100
#include
void
mian
(){
int
i=0,s=0;
for(i=1;i<=100;i++){
s+=i;
}
printf("s=%d",s);
}
求採納
『柒』 初學C語言。關於for循環的疑問
int n,i;
for(i=1;i<=5;i++) //這是繪畫它的框架,因為有五行,所以i從1到5,
相當於縱坐標
{ //如果你懂循環的順序的話,就會很容易寫出代碼
for(n=1;n<=i;n++) //這是為了將*號輸出
{
printf(" * ");
}
printf("\n"); //這是在一次循環結束後,即每一行*號輸出後,執行換行處理,代表著外部循 環的一次結束
}
X/=10 就是 X=X/10的縮寫 除號換成「+」,「-」,「*」都是一樣的。
『捌』 C語言中for語句的疑惑:為什麼只有把賦值語句放在for語句中才能正確執行而在定義時賦值卻只出現部分結果
你這是三層嵌套循環,第二層循環j的值每次從0增加到9,第三層循環k的值每次從2到9。
程序1:當i=1,j=0,for(;k<=9;++k)執行完後,輸出103,k的值變為10。++j後,什麼也沒執行,因為k>9,不能執行for(;k<=9;++k)。同樣for(;j<=9;++j)執行完後j就變為10。每次循環j,k都要重新賦值的。
外層循環可以這樣寫for(;i<=2;++i)
不知道說清楚了沒~
『玖』 關於C語言中FOR循環的問題
for語句沒有循環次數的限制,完全可以無限制循環往復,甚至無限循環有很多有用的用途。
你遇到的情況或許是由於其他原因造成的,可以細讀代碼尋找緣由。