for迴圈後加和不加的區別是什麼

時間 2021-09-10 15:05:35

1樓:匿名使用者

for迴圈後面沒大括號時,只對下一句**進行迴圈操作。就是for之後;之前的那句。加了那個;以後for迴圈操作的就是空語句了

2樓:qi愛珍

for();:表示這個for迴圈什麼都不做,即for迴圈到分號處結束,不加分號,執行for下面大括號裡面的值

3樓:

加了,表示for迴圈中省略花括號,而且,此for迴圈什麼都不做;

而不加呢,表示for迴圈省略花括號,但是,此for迴圈中做的事就是:system.out.println(sum);

4樓:神魔鬼怪妖佛仙

加了就是空迴圈,只改變sum變數的值,不執行system.out.println(sum);直到退出迴圈才執行system.

out.println(sum);這時候sum迴圈6次,就變成了21。

沒加就迴圈執行system.out.println(sum);

5樓:匿名使用者

加了之後,只列印最終結果

不加,列印6次,包括中間結果,最終sum結果一樣,但是加了之後,sum += i ++是在列印之後執行的

6樓:風雨

加分號則for後面的大括號執行一次,而且與for裡面的條件無關

7樓:手機使用者

有一坨,就一定要加,要不然執行的只是最近那句if(***)

a=a+n;//像這樣子,只有***為真時會執行這句,而下面那句無論***是什麼都

a=a+n;///跟它沒關係,都會執行,

如果加了括號

if(***)

你的程式沒區別,自己查其它錯誤去

在c語言中,for語句的後面加分號和不加分號有何不同?

8樓:種完太陽吃牛大

for迴圈後面加分號,表示這個迴圈是空語句,除了執行for()括號裡的,什麼都不幹。然後就執行下一行,也就是你的prinf,printf和for迴圈沒關係。

如果不加分號,那for迴圈後面的printf語句就是for迴圈的一部分,跟著for一起執行,但前提是for迴圈裡的條件要滿足。執行到第二個for時a已經等於3了,你要b=a,那b怎麼可能小於3 。所以後面的for迴圈不滿足條件,不執行,同時for裡面的**也不執行。

使用for語句應該注意:

1) for迴圈中的“表示式1(迴圈變數賦初值)”、“表示式2(迴圈條件)”和“表示式3(迴圈變數增量)”都是選擇項,即可以預設,但分號(;)不能預設。

2) 省略了“表示式1(迴圈變數賦初值)”,表示不對迴圈控制變數賦初值。

3) 省略了“表示式2(迴圈條件)”,則不做其它處理時便成為死迴圈。

例如:for( i=1; ; i++ )  sum=sum+i;

c語言for語句加{}和不加{}有什麼區別?

9樓:匿名使用者

你好,很高興為你答疑。

為了程式的易讀,一般是提倡加括號的,那樣for函式執行的主體清晰明瞭。

不加括號的時候,預設該for函式執行的是緊跟其後的1函式或語句。

比如:for(;;)

}這裡面外層的for不佳括號也可以的。但是如下:

for(;;)

printf("");

}這樣的話外層for不加括號主體是內層 for ,主體沒有printf函式了。是以提倡加括號。

問題解決還望採納。也歡迎**。

10樓:匿名使用者

{}其內的所有語句是

迴圈體內的語句;無{}則預設下一個";"前的語句是迴圈體內的語句。

例如:for(int i=0;i<5;i++)//每次迴圈,m和n的值都重新計算,即5次計算。

for(int i=0;i<5;i++)m+=5+i;n+=m;//每次迴圈,m的值都重新計算,即5次計算,n則是for迴圈結束後僅計算一次。

for(int i=0;i<5;i++);m+=5+i;n+=m;//每次迴圈啥都不做,m和n則是for迴圈結束後僅計算一次。

11樓:匿名使用者

如果for迴圈裡面,只有一條語句,那麼,加不加 是沒有任何區別的。 如果for 迴圈裡面有很多條語句,那麼加了{},for就執行兩個{}裡面的語句,不加,就執行下一個分號之前的語句,因為一個分號是保不住多個語句的。

請問c語言中for迴圈後面加上分號和不加分號有什麼區別嗎?

12樓:匿名使用者

加上分號,for迴圈就變成了空迴圈,一直迴圈,不輸出任何東西,直到不滿足迴圈條件,退出迴圈,才執行下一條語句。

13樓:匿名使用者

在哪加?

在大括號後? 那最好不加,加了就是多一個空語句。

如果直接加了for()的後面,將執行不了別的語句了~~~~~~~~~~~~~

在c語言中,for語句的後面加分號和不加分號有何不同,該分號有什麼作用?

14樓:大野瘦子

加分號,表示這個迴圈是空語句,除了執行for()括號裡的,什麼都不幹,然後就執行下一行。

不加分號,那for迴圈後面的printf語句就是for迴圈的一部分,跟著for一起執行,但前提是for迴圈裡的條件要滿足。

分號代表語句結束。

例如:for(i=0;i<100;i++);

就等於:

for(i=0;i<100;i++)

15樓:翲燚

for語句有兩種用法,一種是跟單個語句,一種是跟**體

在跟單個語句時,由於在c語言語句預設是以分號結尾的,程式會將for (;;)之後直到第一個分號的**視為迴圈體來執行,例如下面三種情況:

for (int i=0; i<10; i++) foo1();

for (int i=0; i<10; i++)

foo1();

for (int i=0; i<10; i++)

foo1();

上面三種寫法,都是呼叫foo1()函式10次。在下面一種情況裡,程式只會將foo1()函式迴圈呼叫10次,而不會將foo2()列入迴圈中,因為分號for語句在foo2()之前就已經結束了:

for (int i=0; i<10; i++) foo1(); foo2();

特別要提的是下面的兩種寫法,這兩種寫法的for語句的迴圈體都為空,程式都不會將foo2()列入迴圈,因此foo2()只會執行一次。這也是初學者常見的書寫錯誤。

for (int i=0; i<10; i++) ; foo2();

for (int i=0; i<10; i++) ;

foo2();

除了跟單個語句外,for語句還可以跟 圈起來的**體,如下面的例子:

for (int i=0; i<10; i++)

在這種情況下,for語句可以不以分號結尾,程式會將**體內的所有語句迴圈10次。

16樓:匿名使用者

for後面是個迴圈體 你可以理解為一個語句塊for{}

平時是由一些語句組成的 如果直接加分號的話 說明不執行操作(空操作) 只做單純迴圈 沒有什麼意義 一般用在延遲函式裡

但這樣的寫法是不推薦的 因為很佔cpu 你可以試一下用三重迴圈 然後迴圈體只寫一個分號 執行你會發現電腦記憶體一下子飆很高 最簡單的電腦病毒就是這樣做的 用很高次的迴圈 做無意義的操作 讓你的電腦執行很慢

17樓:逍遙的夢

for(i = 0;i<5;你所說的是for()後面那個分號嗎?如果是的話,他後面的分號是一定要的,但是如果分號直接寫在括號後面卻沒有其他語句的話,證明這個迴圈是沒有可執行語句的,如上面1.

第二個例子分號前面有個語句,就是每當括號裡的條件成立時,他就會執行一次。

18樓:匿名使用者

分號代表語句結束假設你有一個陣列int a[5];那麼你可以這樣給陣列賦值for(int i = 0;i<5;i++) a[i]=i;這個是沒加分號的,那麼a[0]=0,a[1]=1....a[4]=4;for(int i = 0;i<5;i++);這樣加了分號,就代表結束了,相當於迴圈只執行了i,然後就退出迴圈了 a[i]=i;//這樣相當於只有a[4]=4; c語言中,分號代表語句結束

19樓:匿名使用者

c語言中";"表示一句的結束,長的句子可以分成多行寫,到最後才寫一個";"

for語句中後面的分號也是如此,根據迴圈結構和你的需求不同,有時會寫分號,有時候換到下一行寫,還是有分號的。

20樓:匿名使用者

這個 其實每一項**後面必須要加“;”,但是如果for後沒有語句 就多加一個“;”,代表那項**是空值 for ( i = 0; a[ i ] <= m; i++ ) ;;;;;;; 也沒人說你錯的

21樓:戀雲歌晨

剛試驗了一下,一個是加分號一個是不加分號的

22樓:想做一隻喵喵喵

推薦回答中最後那個迴圈出來是i=5,而不是4

for迴圈帶花括號和不帶有什麼區別啊

23樓:匿名使用者

比如當i=1時,帶花括號表示程式重頭到尾都執行一次再i++(即輸出endl後在i++)。不帶花括號時

程式將在輸出第一個空格後執行i++,即當i等於k+1後才執行for(j=1;j<=8-i;j++)

cout<<" ";

24樓:匿名使用者

用花括號括起來的語句被看作一個

語句體。

正常情況下,c以;(分號)來區分一個語句體。

for , while , if...else 等流控命令後,只能跟一個語句體,所以,如果想執行多個則用花括號括起來。

25樓:匿名使用者

帶花括號代表整個花括號 內是一個迴圈體,

不帶則只執行其後的一條語句。

26樓:

for(i=1;i<=k;i++)

for(j=1;j<=8-i;j++)

for(j=1;j<=2*i-1;j++)cout<

}這樣就亂了???你用的什麼ide啊,我的怎麼沒事,我用vc++6.0 和codeblocks

c語言:for迴圈後面的語句有{}與沒有的區別

27樓:吉祥二進位制

在c語言中大括號, 用於定義函式體,構成複合語句(語句塊)、宣告聯合(union)及結構體變數。

在for迴圈中沒有大括號,則表示緊接for語句下面的一句為迴圈體。

for (int start=0; end!=100; ++start)

printf("start value:%d\t", start); //這一句是for迴圈的迴圈體

printf("\n"); //這一句不是迴圈體中的語句如果迴圈體中有多條語句,是需要使用大括號的。

28樓:孤星淚

這個要視情況而定。。

比如以下兩種情況

#include

main()

printf("第二種輸出方式:\n");

for(i=0;i<10;i++)

printf("%d",a[i]);

printf("\n");

return 0;

}看以上“\n”的作用就知道

括號的作用是限制作用範圍

29樓:眼大5子

雖然c語言中,假如for迴圈後面只有一條語句可以省略{}。

但是為了程式設計規範,一般建議不管for迴圈後面幾條語句,一律加上{}

30樓:

如果for迴圈裡面只有一句話的話,就可以不用{},如果for迴圈主體有很多語句,就要用{}包住這些語句。

但是有點良好的程式設計習慣,加一個{},對**的規範,閱讀的簡便都有挺大的幫助的。最好的都加上吧。

位置度加直徑符號和不加直徑符號的區別

不帶 的是表示在給定的方向的位置度公差,帶 表示在任意方向的位置度公差 不加直徑符號則表示預設有直徑符號,因為同軸度形位公差中還有加球體直徑符號s的。機械製圖位置度有直徑符號是在直徑範圍內的公差要求。a b c是基準符號,1.5 0.5是位置度允許的偏差,即孔中心的偏差允許在直徑1.5和0.5的範圍...

jquery中變數加和不加有什麼區別

柏影 帶 的變數都是直接獲取的jquery物件,不帶 的是普通變數或者是dom物件,簡單的說就是代表的物件不一樣,容易區分。jquery中變數加 和不加 有什麼區別 沒有區別,只是習慣。一般在給jquery物件取名的時候在前面加 一看就知道是jquery物件。 變數命名規則中起始字元可以是 字母,下...

風冷的冰箱裡單迴圈和雙迴圈的區別是什麼呀不懂請懂的童鞋

單迴圈是隻有一套製冷系統,雙迴圈是有兩個蒸發器,比如冷藏和冷凍各有一個,由主控板控制電磁閥的開關,來控制溫度,風冷冰箱好像只有6門的是雙迴圈,其他如對開門的都是單迴圈。 雙迴圈壓縮機倉內有個電磁閥,或者使用兩個壓縮機 很土的一個判斷方式,雙門冰箱開啟一個門 然後快速合上門如果對邊一個門會彈出來則是單...