問一下,for語句的內層巢狀中的花括號不新增可以嗎?我感覺新增與沒新增沒什麼區別

2021-04-30 21:25:00 字數 5273 閱讀 2729

1樓:匿名使用者

有用的,如果沒有括號的話,外層for只會包含到下一行,也就是內層迴圈。而內層迴圈也只包含到printf("%c",diamond[i'[j]);

結果就是 printf("\n")不會在迴圈中執行。因此*號全部都列印在一行

for語句中巢狀if else語句為什麼可以不加{}

2樓:團長是

c++規定,循bai

環體必須為單個語du句。但往往有時需要在循zhi環dao體中執行多百句**,這時候版,可以將

權這些語句用{}括起來,構成「塊語句」。

if語句一般形式

if語句的一般形式如下:

if(表示式)語句1

[else語句2]

if語句中的「表示式」可以是關係表示式、邏輯表示式,甚至是數值表示式。其中最直觀、最容易理解的是關係表示式。所謂關係表示式就是兩個數值進行比較的式子。

3樓:四捨**入

c++規定,迴圈體必須為單個語句。但往往有時需要在迴圈體中執行多句**,這時候,版可以將這些語句用

權{}括起來,構成「塊語句」。

「塊語句」在形式上等價於單個語句。

if...else無論有多少個分支,在形式上都等價於單個語句。因為這些分支中要麼乙個分支都不執行,要麼至多執行其中的乙個分支。

4樓:陽光上的橋

當if和else後面是多個語句的時候必須使用{},只有乙個語句時無需{},if或者switch等複雜語句也只是乙個語句,無需使用{}

5樓:火龍大大果

這個bai是和語言的語法

du有關係的。if else裡{}是可以省略zhi的。

但是,如果dao你內

要執行的語句有容多條,括號必須有,否則就完全是兩個意思。

只執行一條語句的話,括號省略,也不會出錯。

if(aa==0)

aa=bb;

bb=cc;

if(aa==0)

if(aa==0)aa=bb;

6樓:匿名使用者

c++規定,循

bai環體必須為單du個語句。但往往zhi有時需要在迴圈體dao中執行多句**專,這時候,可以將這屬些語句用{}括起來,構成「塊語句」。

「塊語句」在形式上等價於單個語句。

if...else無論有多少個分支,在形式上都等價於單個語句。因為這些分支中要麼乙個分支都不執行,要麼至多執行其中的乙個分支。

所以在上面那個例子中,不需要{}。

只要是形式上等價於單個語句的,都可以不用{},比如整個switch...case結構。

7樓:匿名使用者

確實包括for迴圈,以及if,while等語句,後面只有一行**可以不加{},

你這裡if...elseif...else 可以認為是一條語句

到底加不加看個人愛好,沒有死規定

8樓:匿名使用者

這是來程式設計風格所致。

在源c中,for、ifelse、while語句在巢狀時或者單獨使用bai時均可以分號du;作為結zhi束的標誌,在

編譯器中會預設按照分dao號執行。但是這種風格有很多問題,比如閱讀困難,結構不會很清晰等等。這是這種風格的缺陷。

因此,在良好的程式設計分風格要求下,這些語句需要使用一對花括號作為分界符,花括號內的所有語句被認為是語句塊,即復合的單語句從而在編譯器中執行。

因此不加花括號程式依然可以正常執行,但是在人員閱讀及測試和除錯時會帶來不必要的問題和煩惱。因此加上花括號尤其是在有巢狀的語句中會很清晰的劃分出結構來。使得閱讀很清楚方便。

9樓:匿名使用者

你是不是加錯地方了。

請詳細地說一下for迴圈中的花括號什麼時候需要用什麼時候不用 用了和沒用的作用分別是什麼?

10樓:aq硬梆梆

只有一句**塊時可能不需要吧!!if 是這樣的。for 沒注意過。你試試

11樓:月色影悠然

如果當for要執行的只是一條語句時,可以不要加花括號。

for(int i = 1; i < 11; i++)system.out.println(i);

這種情況下加不加都是一樣的,因為只有一句話。

for(i=0;i<6;i=i+1)

這時候輸出1 2 3 4 5

如果不加花括號就相當於

for(i=0;i<6;i=i+1)

printf("%d\n",a);

a 如果之前沒有定義的話會報錯,在迴圈體裡定義的a不能在花括號外使用

c語言問題,求解為什麼for後面有無花括號,導致結果不一樣呢,不是說for後面可以加花括號也可以不加花括號

12樓:匿名使用者

你理解錯了。。。不加括號是在for的執行語句只有一句是才可以。你的執行語句有兩句,所以你不加括號的話,它就預設為一句了。。

也就是說如果不加括號for語句就只有 p = p*i;在迴圈了。。。

13樓:匿名使用者

請問是誰跟你

復說的for後面可以加製花括號也可bai以不加?這個是錯誤的,花括號du是將多條語句合zhi並成一條語dao句,而for只執行後面一條語句,如果要使for後面執行多條語句就要用花括號講這幾條語句括起來,希望可以幫到樓主

14樓:匿名使用者

什麼時候加抄什麼時候不加,,

襲,,你自己

bai寫一下親身感受一下就曉得了。

du。在乙個迴圈zhi體或判斷裡面,超過乙個dao語句就必須加{}。。。如for(i=0;i<2;i++)和for(i=0;i<2;i++)printf("%d ",i);printf("%d\n",i+1);執行出來的結果是不一樣的,,加了{}表明{}裡面的內容屬於當前迴圈體,不加的話就不是。。。

例子中第一for執行的結果就是0 1 換行1 2換行、、、、而第二個就只是0 1 3換行

希望你能理解,,,記得採納

15樓:匿名使用者

嗯 ,當for後只有一條語句時是一樣的。當有兩條以上時,他只執行第一條。

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

16樓:大野瘦子

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

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

分號代表語句結束。

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

就等於:

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

17樓:翲燚

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次。

18樓:匿名使用者

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

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

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

19樓:逍遙的夢

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

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

20樓:匿名使用者

分號代表語句結束假設你有乙個陣列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語言中,分號代表語句結束

21樓:匿名使用者

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

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

22樓:匿名使用者

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

23樓:戀雲歌晨

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

24樓:想做乙隻喵喵喵

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

問一下對聯的答案,問一下對聯的答案

我看這樣對也可以 碧海比藍天,海雖碧,天更藍.小泉 犬 有野心,犬雖小,心更野.幻影對狂風,影雖幻,風更狂.雌兒對老雞,兒雖雌,雞更老.高山比深淵,山雖高,淵更深.絕對難智人,對雖絕,人更智 妙女待明日,女少妙,日月明 忠心進誠言,心中忠,言成誠 妙女當優人,女少妙,人尤優 濟水濯芳草,水齊濟,草方...

問一下黃金的問題

你們這兒的 首飾 千足金 是每克270左右 比我們這兒的貴一些。我們這兒只有252 克,而且是周大福的,我昨天也買了一條手鍊,感覺還不錯。首飾絕對不可以買 你可以買紙 的,6千塊錢可以買30克,等到 直接賣出就可以了。一克可獲利40元,你總共可獲得1200.但要小心,不要輕易止跌。只要手數在,就不怕...

問一下你們戴的都是什麼樣的玉鐲,問一下你們剛開始戴上玉鐲後習慣麼,戴玉鐲幹活或幹別的方便麼?急!!!

你發的 是翡翠,也是市面上最常見的玉石,翡翠堪稱玉石之王,是目前市面上最普片也是最有價值的玉石。分abc三種貨。其a貨的 差距也相當大,從幾元到幾千萬的都有!正在選之中,不知道買什麼玉好,怕買到b貨的玉,唉真糾結 問一下你們剛開始戴上玉鐲後習慣麼,戴玉鐲幹活或幹別的方便麼?急!這沒什麼。其實,每個人...