C語言中函式迴圈裡有個返回,迴圈外有個返回,返回的是哪個

2022-08-26 14:05:32 字數 3219 閱讀 8978

1樓:匿名使用者

int testlinkring(link *head)//到這說明while迴圈結束了,並沒有任何一個if判斷成功,也就是沒有執行過任何return

return 0; //到這函式結束,無論如何要返回一個數}

2樓:匿名使用者

滿足 if (t1 == t2) 返回 1滿足 if (null == (t2 = t2->next->next)) 返回0

跳出迴圈返回0

也就是說返回值是0或者1

if (null == (t2 = t2->next->next)) 這句將 t2改變了,如果 此時 t2等於 t1,就形成環了,返回1

3樓:致尚匯

這裡的0 1應該是布林表示式,真與假,裡面的while迴圈判斷當外迴圈為真時返回的值,最後的return為返回一個表示式為假的值,即當while不成立時,表示式為假

4樓:澤兮如顏

在程式裡面只要執行到return這個語句,就是不在執行函式剩下的語句了,直接返回。

5樓:

return 代表結束返回,只要碰到,則這個函式就退出結束了, 不分迴圈裡外

6樓:匿名使用者

先遇到哪個就返回哪個,返回以後函式就結束了,不會執行後續**。

c語言怎樣把一個函式裡面的一個迴圈的所有結果依次返回

7樓:竹葉蘭之夏

如果是在c++中, 這個很簡單, 使用stl中的容器類可以方便的儲存所有b的值, 然後返回給主函式. 在c中, 如果事先知道迴圈的次數, 也就是說事先知道b有多少種結果, 那也容易, 一個陣列即可. 但像你給出的**, 就要自己寫一個 連結串列 方法, 主函式建立連結串列, 傳遞給函式, 然後在迴圈裡每次往連結串列裡增加資料, 就可以實現主函式得到所有b的值了.

8樓:老魘

函式返回都是一個值,但可以在引數中提供一個陣列地址,將迴圈內的結果依次放入,就可以將一組結果帶**用(主)程式。這種方式下,函式本身的返回值一般沒什麼用,但多數人會利用它來帶回某種狀態,比如成功或失敗等等。但必須保證主程式提供的陣列足夠大,或在呼叫時提供第三個引數——陣列尺寸。

9樓:清純小處男

一個函式只能return一次,你如果想知道每個變數值的話,可以在函式裡printf,或者可以嘗試陣列,把所有值放入陣列,再return 出去

c語言:子函式經過迴圈後返回一個值,再次迴圈後怎樣繼續返回值?

10樓:匿名使用者

子函式一旦返回,它的執行就已經結束了,執行上下文已經回到主調函式中

子函式的區域性變數消失,迴圈當然也不復存在。

有些高階語言的generator,可以重複呼叫,下一次呼叫時可以從上次的地方繼續執行,c不具備這個特性。

11樓:o737jnx51牛膽

雲想衣裳花想容(李白)

c語言: 子函式中有while迴圈,while迴圈中最後有return語句,這個return語句返回的是不是子函式的值?

12樓:veket的小號

return 可以返回值 也可以什麼值都不返回 這得看 函式 返回值型別是不是 void 還是 int 、double、其他............

反正 return 將導致 函式呼叫的結束

c語言,這個函式裡,return跳出的是if語句,還是for迴圈?

13樓:街角哦祝福

return是退出當前函式!所以返回到該函式內的某某地方都是錯的,return返回的是函式呼叫的地方!

14樓:匿名使用者

return是直接跳出函式了,和for/if啥的已經木有關係了...

15樓:匿名使用者

呼叫return後直接跳出函式了

16樓:匿名使用者

回憶再美,也得揮手說再見。

17樓:一個蜜糖圈

return語句和break語句是用於迴圈的語句。return是結束本次迴圈繼續進行下一次迴圈,所以你要看這個return處在哪個迴圈裡,接著進行下一次迴圈。而break是終止迴圈,所以你要看這個break處在哪個迴圈中,那麼它所在的迴圈就結束了,不用再做了。

c語言中呼叫函式來判斷素數,當是素數時返回1,否則返回0.為什麼最後return1放在迴圈裡輸出的都不是素數

18樓:聽不清啊

這是由「判斷素數」的演算法性質決定的。判斷素數x實行的是「一票否決」,即只要除1和它自身之外的整數,有任何一個能夠整除x,x就不是一個素數。

迴圈內部只能判斷一個數,不能判斷範圍內的全部(除非已是最後一個數判斷結束,但這種情況一般都是放到迴圈外部判斷的)。

c語言:為什麼在函式中用一個迴圈語句加上一個條件判斷不能正確地返回結果,如圖。

19樓:和藹的慢慢慢

在這個for迴圈裡面呢,一旦執行到return就會跳出迴圈。

你的第一個這個if-else語句是一個整體,一般情況下我們最好在外面給它加個括號,規範一點。首先i=0的時候,就已經return出來-3了,迴圈就結束了。

第二個是沒有else的,你看return i和return-3之間是不是有一個分號,它們是分開的,for迴圈是和分號之前的進行,執行到i=2的時候,就return 2了,至於下面分號後面的return-3就沒有機會執行了。

20樓:靜默

for語句下的語句你得加花括號才能保證以下語句全在迴圈裡。

c語言中函式返回值不是只能有一個嗎?為什麼它這裡用了for 迴圈,

21樓:

就是一個呀,if成立了就執行return 0;,不再執行return 1;了,反之則反。

22樓:

return 只能同時返回一個值,要想返回多個值,可以將變數定義為static(靜態的),這樣在定義變數是就給它分配了記憶體空間,當函式生命週期結束時,變數的值任然存在,其他函式也可以使用它的值。也可以用指標變數作為函式的形參,改變指標指向的內容,也能達到改變變數值的目的。這兩種方法就相當於返回多個值了。

C語言中for迴圈語句,c語言中for語句是怎麼用的

for 語句包括三個表示式,第一個和第三個可以省略,省略第一個的意思是在for之前已經對變數初始化,例如i 0 for i 5 i 和for i 0 i 5 i 意思相同 第三個省略的意思也很明顯,原來的i 可以在for迴圈語句中實現,例如 for i 0 i 5 i 和for i 0 i 5 i ...

for迴圈的介紹,C語言中for迴圈怎麼理解?

for迴圈程式語言中的語句之一,用於迴圈執行。for迴圈是開界的,它的一般形式為 for 條件表示式 語句 初始化通常是一個賦值語句,它用來給迴圈控制變數賦初值 條件表示式是一個關係表示式,它決定什麼時候退出迴圈 增量定義迴圈控制變數每迴圈一次後 按什麼方式變化。這三個部分之間用 分開。例如 for...

C語言for迴圈賦值問題,C語言中用for迴圈賦值陣列

在第一次迴圈以後,漏掉了將j清零的操作,這樣在i 1與i 2時,j 4,不會進入輸出的第二級迴圈 c語言中用for迴圈賦值陣列 include main a 0 到a 9 這10個數依次賦值0到9for i 0 i 10 i a i i a 20 到a 29 這10個數全部賦值成9for i 20 ...