魯迅先生曾說過,偉大的成績和辛勤勞動是成正比例的,有一分勞動就有一分收穫,日積月累,從少到多,奇蹟就可以創造出來。學習也是同等道理,日積月累,逐漸儲備知識就可以完成自己的理想。然而看
c語言程式設計教程
是儲備知識的乙個方法, 所以現在就來看看我要學習的知識內容。
if語句是大型程式使用最多的結構,不管你編寫的是應用程式還是指令碼語言,經常會遇到判斷語句。
用if語句可以構成分支結構。它根據給定的條件進行判斷, 以決定執行某個分支程式段。c語言的if語句有三種基本形式。
1.第一種形式為基本形式 if(表示式) 語句; 其語義是:如果表示式的值為真,則執行其後的語句, 否則不執行該語句。其過程可表示為下圖
void main()
輸入兩個整數,輸出其中的大數。改用if-else語句判別a,b的大小,若a大,則輸出a,否則輸出b。
3.第三種形式為if-else-if形式
前二種形式的if語句一般都用於兩個分支的情況。 當有多個分支選擇時,可採用if-else-if語句,其一般形式為:
if(表示式1)
語句1;
else if(表示式2)
語句2;
else if(表示式3)
語句3;
… else if(表示式m)
語句m;
else
語句n;
其語義是:依次判斷表示式的值,當出現某個值為真時, 則執行其對應的語句。然後跳到整個if語句之外繼續執行程式。 如果所有的表示式均為假,則執行語句n 。 然後繼續執
行後續程式。 if-else-if語句的執行過程如圖3—3所示。
#include"stdio.h"
void main()
本例要求判別鍵盤輸入字元的類別。可以根據輸入字元的ascii碼來判別型別。由ascii碼表可知ascii值小於32的為控制字元。 在「0」和「9」之間的為數字,在「a」和「z」之
間為大寫字母, 在「a」和「z」之間為小寫字母,其餘則為其它字元。 這是乙個多分支選擇的問題,用if-else-if語句程式設計,判斷輸入字元ascii碼所在的範圍,分別給出不同的
輸出。例如輸入為「g」,輸出顯示它為小寫字元。
而在qbasic中的if語句和其他的程式語言比較一致,基本上都是 if……then……else……結構。其中if……then……是必須的,其中if後面的條件可以使用and、or 的多條件結構
,if語句和else後面也可以跟隨if語句的巢狀,這種寫法在
c語言中也是很常見的一種寫法。例如:
例如典型的託運計費問題:
當貨物重量小於20公斤的時候,收費5元,大於20公斤小於100公斤的時候超出20公斤的部分按每0.2元每公斤計費,如果超出100公斤的時候,超出的部分按照每公斤0.15元計算。
編寫程式,自動計算貨物的運費。
分析:貨物的費用分為三個區間,小於20公斤,20-100公斤,100公斤以上。需要使用判斷語句來分情況處理。
初寫:if x<=20 then y=5
if x<=100 then y=5+(x-20)*0.2
if x>100 then y=5+(100-20)*0.2+(x-100)*0.15
如果完善一下,加上輸入重量 x 的語句和輸出結果 y 的語句,程式可以變為:
clsinput "shu ru zhong liang";x
if x<=20 then y=5
if x<=100 then y=5+(x-20)*0.2
if x>100 then y=5+(100-20)*0.2+(x-100)*0.15
print "tuo yun fei shi:";y;
end
注意:1、上例中的input語句是輸入語句,其中英文引號部分可有可無,有的好處是,可以提示我們「輸入重量」的數字,其中引號和x之間需要用英文的分號分隔(這一點和print語句
是一樣的);
2、上例中我在第二個if沒有使用雙條件語句 if x>20 and x<100 想想為什麼?(使用雙條件的結果是一樣的)
4.在使用if語句中還應注意以下問題
(1) 在三種形式的if語句中,在if關鍵字之後均為表示式。 該表示式通常是邏輯表示式或關係表示式, 但也可以是其它表示式,如賦值表示式等,甚至也可以是乙個變數。例如
: if(a=5) 語句;if(b) 語句; 都是允許的。只要表示式的值為非0,即為「真」。如在if(a=5)…;中表示式的值永遠為非0,所以其後的語句總是要執行的,當然這種情況在程
序中不一定會出現,但在語法上是合法的。
又如,有程式段: if(a=b)
printf("%d",a);
else
printf("a=0"); 本語句的語義是,把b值賦予a,如為非0則輸出該值,否則輸出「a=0」字串。這種用法在程式中是經常出現的。
(2) 在if語句中,條件判斷表示式必須用括號括起來, 在語句之後必須加分號。
(3) 在if語句的三種形式中,所有的語句應為單個語句,如果要想在滿足條件時執行一組(多個)語句,則必須把這一組語句用{} 括起來組成乙個復合語句。但要注意的是在}之後
不能再加分號。
例如:if(a>b)
else
在運用if語句的時候,一定要條理清晰,靈活運用,多檢視一些
c語言經典書籍
中的典型案例,充分理解語言運用方法。今天學習到這裡,一分耕耘一分收穫,明天繼續學習。
C語言學習筆記6
最開始學習的時候從最簡單的程式設計開始學習,那麼我們都會看一些關於 c語言基礎書籍 把基礎打好之後我們會慢慢的看一些 c語言提高書籍 那麼接下來我們就繼續進行打基礎的工作。1 啟動vc 編譯系統 單擊 file 選單中 new 命令,進入vc 編譯系統介面,選擇 files 選項卡,選擇c 原始檔命...
C語言學習筆記 6
1.指標的 在當代,大多數的現代計算機都會把記憶體分割成位元組,每個位元組都有著其唯一的位址。可執行程式由 和資料兩部分構成,而程式中的每個變數都占有著乙個或多個位元組,也就是說,每個變數都有著自己的位址。而這個就是指標的 其實每個位址就是乙個數,但是我們卻不能用數來表示位址,儲存位址,我們需要用指...
C語言學習筆記 6
1.指標的 在當代,大多數的現代計算機都會把記憶體分割成位元組,每個位元組都有著其唯一的位址。可執行程式由 和資料兩部分構成,而程式中的每個變數都占有著乙個或多個位元組,也就是說,每個變數都有著自己的位址。而這個就是指標的 其實每個位址就是乙個數,但是我們卻不能用數來表示位址,儲存位址,我們需要用指...