if 語句什么
*語句的一般格式
if(表達式)
{語句組1;}
[else
{語句組2;} ]
(1)if語句中的“表達式”必須用“(”和“)”括起來.
(2)else子句(可選)是if語句的一部分,必須與if配對使用,不能單獨使用.
(3)當if和else下面的語句組,僅由一條語句構成時,也可不使用復合語句形式(即去掉花括號).
*語句的執行過程
(1)缺省else子句時
當“表達式”的值不等于0(即判定為“邏輯真”)時,則執行語句組1,否則直接轉向執行下一條.
(2)指定else子句時
當“表達式”的值不等于0(即判定為“邏輯真”)時,則執行語句組1,然后轉向下一條語句;否則,執行語句組2.如圖4-1(b)所示.
*語句的嵌套與嵌套匹配原則
if語句允許嵌套.所謂if語句的嵌套是指,在“語句組1”或(和)“語句組2”中,又包含有if語句的情況.
if語句嵌套時,else子句與if的匹配原則:與在它上面、距它最近、且尚未匹配的if配對.
為明確匹配關系,避免匹配錯誤,強烈建議:將內嵌的if語句,一律用花括號括起來.
求高手解釋一下這個if語句的執行過程,感謝
hanoi函數的目的是解決漢諾塔的移動序列,它有4個參數:1. n表示要移動的盤子的個數2. 一開始盤子在哪個柱子上,這個變量叫a,所以可以說,一開始在a柱子上4. 最后盤子要移動到哪個柱子上,這個變量叫c,所以可以說,最后要移動到c柱子上3. 中間用來過渡的柱子。
漢諾塔一共3個柱子,用兩個是不能完成的,所以還要有一個柱子進行過渡。首先,如果n等于1,說明就只有一個盤子要從a柱子移動到c柱子,那么直接打印a->c如果盤子的數量大于1,那就要分開解決。
(1)首先把頂上的n-1個盤子從一開始的a柱子移動到b柱子遞歸調用:第一個參數是要移動的盤子數量,現在需要移動n-1個盤子第二個參數是從哪里開始移動,現在盤子都在a柱子上,所以是a第四個參數是移到哪里去,現在要移到b柱子上,所以是b第三個參數是剩下的那個柱子,也就是c(2)n-1個盤子移掉以后,a柱子只剩下最后的大盤子,直接移到c柱子,也就是打印a->c(3)把(1)之后移到b柱子上的n-1個盤子從b移動到c所以遞歸調用:第一個參數是盤子個數,現在只有n-1個了第二個參數是從哪里開始移,現在盤子都在b柱子上,所以是b第四個參數是移到哪里去,我們要移到c柱子上,所以是c第三個參數就是另外的一個柱子,所以是a。
寫出if語句的書寫格式與執行順序
IF語句根據指定的條件來確定語句執行順序,共有3種類型。
1、 用于門閂控制的IF語句 書寫格式: IF 條件 THEN END IF; 條件成立,順序處理語句執行,否則不執行。 2、 用于二選一控制的IF語句 書寫格式: IF 條件 THEN ELSE END IF; 當條件滿足時,執行順序語句甲;條件不成立時,執行順序語句乙。
3、 IF語句 IF 條件1 THEN ; ELSEIF 條件2 THEN ; …… ELSEIF 條件n THEN ; ELSE ; END IF; LIBRARY IEEE; USE *_LOGIC_*; ENTITY control_stmts IS PORT (a, b, c: IN BOOLEAN; output: OUT BOOLEAN); END control_stmts; ARCHITECTURE example OF control_stmts IS BEGIN PROCESS (a, b, c) VARIABLE n: BOOLEAN; BEGIN IF a THEN n := b; ELSE n := c; END IF; output。
求高手解釋一下這個if語句的執行過程,感謝
hanoi函數的目的是解決漢諾塔的移動序列,它有4個參數:
1. n表示要移動的盤子的個數
2. 一開始盤子在哪個柱子上,這個變量叫a,所以可以說,一開始在a柱子上
4. 最后盤子要移動到哪個柱子上,這個變量叫c,所以可以說,最后要移動到c柱子上
3. 中間用來過渡的柱子。漢諾塔一共3個柱子,用兩個是不能完成的,所以還要有一個柱子進行過渡。
首先,如果n等于1,說明就只有一個盤子要從a柱子移動到c柱子,那么直接打印a->c
如果盤子的數量大于1,那就要分開解決。
(1)首先把頂上的n-1個盤子從一開始的a柱子移動到b柱子
遞歸調用:
第一個參數是要移動的盤子數量,現在需要移動n-1個盤子
第二個參數是從哪里開始移動,現在盤子都在a柱子上,所以是a
第四個參數是移到哪里去,現在要移到b柱子上,所以是b
第三個參數是剩下的那個柱子,也就是c
(2)n-1個盤子移掉以后,a柱子只剩下最后的大盤子,直接移到c柱子,也就是打印a->c
(3)把(1)之后移到b柱子上的n-1個盤子從b移動到c
所以遞歸調用:
第一個參數是盤子個數,現在只有n-1個了
第二個參數是從哪里開始移,現在盤子都在b柱子上,所以是b
第四個參數是移到哪里去,我們要移到c柱子上,所以是c
第三個參數就是另外的一個柱子,所以是a
C語言中的if語句的執行順序是怎么執行的?嵌套時怎么組合,花括號
1 執行流程
對于基本語句:if(條件) 語句1 else 語句2
執行流程為
如果條件成立 則執行語句1,否則執行語句2。
2 當語句1或語句2又為一個條件語句時就構成了條件嵌套。
嵌套時最基本的組合原則是,else與其上同一個層次中、最近一個、未配對的if組合。
如:if ()
if () 語句1
if ()語句2
else 語句3
則 else 與第三個if配對
再如 if ()
{ if () 語句1
if ()語句2 }
else 語句3
則 else 與第一個if配對,(在同一層次)
3 {} 是構成復合語句,當語句1或2為多個語句時,需要由{}括起來,構成一個符合語句。
或者通過{} 改變配對次序(如上例)
if else endif 什么意思
if 條件1 then
執行1
else
執行2
end if
----------
意思就是:
如果 條件1 成立,那么
執行1
否則
執行2
結束.
------------------
對于代碼來說,是從上到下執行的.
執行過程中,程序判斷條件成立與否,成立就執行那么(then)下面的語句,不成立就跳過,執行else下面的.
當然,這是最簡單的.if 。 else。結構可以很復雜,主要是條件可以很多.比如:
if 條件1 then
執行1
elseif 條件2 then
執行2
。
elseif 條件n then
執行n
else'''------------這個有些有,有些沒有,看設計者的思路了.
執行(n+1)
'''''-------
end if