tft每日頭條

 > 科技

 > c語言while循環使用教程

c語言while循環使用教程

科技 更新时间:2025-01-28 16:44:22

c語言while循環使用教程(螞蟻學堂-C語言編程)1

認真,是一種态度

1、 循環簡介

為了增加您對循環的理解,程序的第1版演示了不使用循環編程的局限性。該程序做了一點運算來計算穿9碼鞋(男人的)腳用英寸表示的長度。

c語言while循環使用教程(螞蟻學堂-C語言編程)2

示例1 shoes1.c

這是一個使用了加法和乘法的程序。該程序假設您穿9碼鞋,然後告訴您用英寸表示您的腳是多長。當然,隻進行一隻鞋的尺碼計算的程序是在浪費時間和精力。您可以将程序寫為一個交互式的程序來使程序更加有用,但是這仍未利用計算機的潛能。

您需要的是某種讓計算機為連續的鞋尺碼做重複計算的方法。畢竟做重複運算才是使用計算機做算術的主要原因。C提供了幾種方法來做重複計算, 我們在這裡介紹一種。該方法就是使用while循環,它能使您更有趣地利用運算符。示例2給出了改進後的計算鞋尺碼的程序。

示例2 shoes2.c

解釋一下while循環是如何工作的:

當程序第一次到達while語句時,檢查圓括号内的條件是否為真。在這例子中,條件表達式是shoe<18.5。

shoe被初始化為3.0,它當然為真。最後一個語句shoe增加1.0,使shoe變成4.0.

此時,程序返回while部分去檢查條件。為什麼在這點呢?因為後面是一個結束花括号(}),而代碼使用一對花括号來标出while循環的範圍。在兩個花括号之間的語句是被重複執行的語句。花括号和花括号裡的程序部分被稱為一個代碼塊。現在回到程序,值4小于18.5,所以跟在while後的被括起來的全部命令(代碼塊)将被重複執行(在計算機語句中,稱程序“循環”執行這些語句),這個重複過程一直繼續,直到shoe的值達到19.

因為此時19不再小18.5,所以shoe<18.5現在就變成了假。

因面控制轉到緊跟while循環的第一個語句。在此例中,轉到最後的printf()語句。

2、再探while循環

c語言while循環使用教程(螞蟻學堂-C語言編程)3

示例 summing.c

  • 程序注釋

這個循環的判斷表達式是:status==1;==運算符是C的相等運算符。當status的值不為1時終止循環。

要使程序正确運行,在每次循環中應該為num獲取一個新值,并且重置status。程序使用scanf()的兩個不同的功能做到這一點。首先使用scanf()來嘗試為num讀入新值,然後使用scanf()的返回值來報告執行是否成功scanf()返回成功讀取項目的個數)。如果您輸入的不是一個數字,例如q,那麼scanf()就不能讀入一個整數,所以它的返回值和status都為0.這将使循環終止 。

如果scanf()在嘗試轉換一個數值時遇到了問題(例如,檢測到文件的尾部或者遇到硬件問題),它就會返回一個特殊值EOF,這個值一般被定義為-1.這個值同樣也會導緻循環終止。

總之,因為while循環是一個入口條件循環,所以程序必須在進入循環體之前獲取輸入并檢查status的值。這就是程序在while之前有一個scanf()調用的原因。要使循環繼續執行,在循環中需要一個讀語句,這樣程序才可以得到下一個輸入的狀态。這就是程序在while循環的結尾處還有一個scanf()的原因,它為下一次循環做準備。可以把如下用法做為循環的标準格式:

get first value to be tested

whlie the test is successful

process value

get next value

  • C風格的讀循環

下面的結構:

status = scanf("%ld",&num);

while (status==1)

{

/*loop actions*/

status == scanf("%ld",&num)

}

可以用下面的形式代替:

while (scanf("%ld",&num)==1)

{

/* loop actions*/

}

第二種形式同時使用了scanf()的兩種不同用法。首先,如果調用成功,函數會把一個值放在num中;第二,函數的返回值(1或0)用來控制循環。

3、while語句

  • 終止while循環

這是對while循環至關重要的一點:當您構造一個while循環時,循環中必須包含能改變判斷表達式的值來使表達式的值最終為假。否則循環永遠不會終止。

  • 循環何時終止

要知道,隻有在計算判斷條件的值時,才決定是終止循環還是繼續執行。

  • while入口條件循環

while循環是使用入口條件的有條件循環。它被稱為有條件,是因為語句部分的執行要依賴于判斷表達式中的條件。這個表達式是一個入口條件,是因為在進入循環體之前必須要滿足這個條件。

  • 語法要點

在使用while時要謹記的一點是:隻有位于判斷條件之後的單個語句(簡單語句或複合語句)才是循環的部分。

要記住,while語句本身在語法上算做一個單獨的語句,即使它使用了複合語句。該語句從while開始,到第一個分号結束;在使用了複合語句的情況下,到終結花括号結束。

  • 在C中,單獨的分号“;”代表空語句。

c語言while循環使用教程(螞蟻學堂-C語言編程)4

今天你進步了嗎?

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2025 - www.tftnews.com All Rights Reserved