(一) 常量和變數
1、 常量
常量:指程式執行期間其值不變的量, 其型別主要有以下五種:
(1) 字元型常量:
用定界符(單引號『』、雙引號" "和方括號[ ])括起來的字串。
(示例:"ade" 『568』 [book])
注意:1、 定界符不作為字元型常量本身,但它規定了常量的型別以及常量的起始與終止界限。
2、 字元型常量的定界符必須成對匹配 (例:"my name『 , [bcde」 兩種表示均錯]。
3、 若某種定界符也是字串本身的內容,則需要用另一種定界符作為該字串的定界符。 (例:" 』abcd』", ["abc[ned] "])
4、 不包含任何字元的字串("")叫空串,它與包含空格的字串(" "不同)。
(2) 數值型常量:
用來表示乙個數量的大小。
構成:由數字,負號,小數點構成。表示形式:
一般: 538, -10.5
科學記數法: 56e-12, 34e4, -1.05e+20
(3) 貨幣型常量:
用來表示貨幣值,書寫時應加前導符」$」
注:貨幣型常量無科學記數表示法,其處理和運算時採用4位小數,如果乙個貨幣型常量多於4位小數,則系統會自動將多餘的小數四捨五入。
例:$123.45678將儲存為$123.4568 (超過4位自動四捨五入)
例:$332e12 (錯誤) $435 (正確)
(4) 日期型常量:
表示乙個確切的日期,
花括號作為定界符,分隔符為斜槓(/),連字元(-),句點(.)或空格中任一種,預設為斜槓(/)。
影響日期格式的命令:
1) set mark to [日期分隔符]
功能:設定日期的分隔符
分隔符可設定為預設時系統統預設為斜槓。
2) set date [to] american | ansi | ymd等
功能:設定日期的的顯示格式,預設為美國格式
3) set century on/off
功能:設定日期型資料顯示時年份以4位還是以2位顯示。
4) set strictdate to [0/1/2]
功能:用設定是否對日期格式進行檢查
0表示不進行嚴格日期格式檢查,與早期foxpro相容
1表示進行嚴格日期格式檢查,系統預設
2表示進行嚴格日期格式檢查,且對ctod( )和cdot( )函式也有效。
(5) 邏輯型常量:
只有邏輯真或邏輯假兩個值,用句點(. .)來作定界符。
邏輯真的表示形式有: .t. , .t. , .y. , .y.
邏輯假的表示形式有: .f. , .f. , .n. , .n.
(示例:.t. .t. .f. .f. .y. .n. .y. .n.)
注:邏輯型常量的定界符不能省略。
2、 變數
變數:在使用過程中其值可以改變的量。分為字段變數、記憶體變數兩大類
(1) 記憶體變數:它是記憶體中的乙個區域,其值就是儲存於該區域裡的資料,它常用來儲存常數、中間結果或最終結果。
(2) 當記憶體變數名與字段變數名同名時,欄位名優先於記憶體變數名,若確實要使用記憶體變數,則可在其前加上m->或(m.)以示訪問的是記憶體變數,而非欄位變數。
(3) 記憶體變數的賦值
格式1:
store 表示式 to
store 變數名列表或陣列名列表
功能:將表示式的值賦給乙個或多個記憶體變數.
格式2:
記憶體變數名=表示式
格式2只能給乙個變數賦值,而格式1可給多個記憶體變數或陣列賦值。
【例如】
store 3*4 to a1,a2 ,a3,a4,a5 則a1,a2,a3,a4,a5值均為12
【例如】
b1=3 將b1賦值3;
b2=b1+2 將b1加2後的值賦給b2,此時b2等於5;
b2=b2+3 將b2加3後的值再賦給b2,此時b2等於8。
說明:乙個變數的值可以不斷變化,最終結果是它最後一次的賦值,在此,"="不是等於運算子,而賦值運算子。乙個命令列只能有乙個命令動詞,若命令列中沒有其他命令動詞,則最左邊的等號為賦值語句的命令動詞;如果乙個命令列已經有乙個命令動詞,則等號是關係運算子。
(4) 表示式值的顯示
? 換行顯示記憶體變數或表示式的值
?? 同行顯示記憶體變數或表示式的值
(5) 顯示記憶體變數
格式:list / display memory [like 萬用字元] [to printer / to file 檔名]
說明:萬用字元指」?」和」*」。
?:表示任意的乙個字元。
*:表示任意多個字元。
like短語用於顯示與萬用字元匹配的記憶體變數
list 和display區別為:滾屏和分屏顯示
(6) 釋放記憶體變數
格式1:release 記憶體變數名錶
格式2:release all [like 萬用字元/except 萬用字元]
格式3:release all [extend]
格式4:clear memory
說明:(1)、格式1用釋放指定的記憶體變數。
(2)、格式2:選用like短語用於清除與萬用字元本匹配的記憶體變數,若選用except短語,用於清除與萬用字元不相匹配的變數。
(3)、格式3用於清除所有記憶體變數。
(4)、格式4用於在關閉所有檔案的同時清除所有的記憶體變數。
示例:release all
release x,y,z
release all like a*
(7) 陣列
定義陣列的命令:
dimension | declare 陣列名1 (下標上限1 [,下標上限2])
說明:1) 陣列的下標允許使用圓括號或方括號括起來。
2) 在同乙個陣列中,不同的陣列元素資料型別可以不同。
3) 陣列一旦被定義之後,該陣列的每個元素的初值為邏輯假值,即.f.,可以使用有關的命令給陣列元素賦值。
例如:dimension aa(3),c[2,3]
二維陣列舉例:
dimension a(2,3)
a(1,1)=1 a(1,2)=2 a(1,3)=3
a(2,1)=4 a(2,2)=5 a(2,3)=6
1 2 3
4 5 6
?a(1,1)
二維陣列元素的存放:按行存放
例如: 給二維陣列x和一維陣列y進行賦值。
dimension x(3,4),y(3)
store 5 to x
y(1)=325
y(2)=「abc」
y(3)=.t.
(二) 表示式
表示式是指用運算子將常量、變數、欄位或函式連線起來的有意義的式子。
表示式值:表示式最終計算結果
表示式的型別:由表示式值的資料型別決定,主要有:數值型、字元型、日期型、關係型、邏輯型等。
1、 數值表示式
數值表示式是由算術運算子將常量、變數、欄位或函式連線起來的式子,其結果仍為數值型資料。
(1)、數值運算子:圓括號()、乘方(**或^)、乘(*)、除(/)、取餘(%)、加(+)、減(-)。
(2)、數值表示式:由數值運算子將數值型常量、變數、函式等連線起來的式子,其結果為數值型。
(3)、運算子的優先順序:括號、乘方、乘除與取模、加減。
例:取餘運算子(%)的應用。
?10%3結果為 1
?-10%3結果為 2
例:取乘方(**或^)運算子的應用
?9**1/2 &&& 結果為 4.5
2、 字元表示式
字元表示式是由字元運算子將常量、變數、欄位或函式連線起來的式子,其結果仍為字元型資料。在字元運算子兩邊的資料必須是字元型資料。
(1)字串運算子:+、-、字串包含運算子($)和精確比較運算子(= =)。
說明:+:兩個字串首尾連線形成新字串;
-:當第乙個字串的尾部有空格時,
將第乙個字串尾部的空格移到第二個字串的尾部,然後,再將兩個字串連線起來。
【例】 ? "abc "+"def" ="abc def"
abc "- "def"="abcdef "
包含運算子$:檢測左邊的字串是否被包含在右邊的字串中。如果包含,返回邏輯真值(.t.),否則返回邏輯假值(.f.)。
精確比較運算子==:只有當兩邊的字串完全相等時,才返回邏輯真值(.t.),反之假(.f.)。
(2)字元表示式:由字串運算子將字元型常量、變數、函式等連線起來的式子。
例: ? "abc "+" bcd結果為"abc bcd"
abc "-" bcd結果為"abc bcd "
book"$"bookstore結果為(.t.)
the"$」this結果為(.f.)
that"= ="that結果為(.t.)
that "= ="that結果為(.f.)
3、 日期表示式和日期時間表示式
(1)日期型運算子:(+)、(-) 只有此兩種
例如? +20結果為:
? - 20結果為:
? - 結果為3600
例如:已知某個人的出生日期為2023年7月20日,計算其現在年齡為多少?
2010-11-20}-)/365
(2)比較:後大前小例:> &&& 結果為 .t.
(3)4種合法應算:
t+n d+n
n+t n+d
t-t d-d
t-n d-n
注意:(1)兩個日期及日期時間型資料的相加是無意義的。
(2)+和-既可作為日期運算子,也可作算術和字串運算子,而使用時具體做何種運算子受其所連線運算物件決定。
4、 關係表示式
1、關係運算
(1)關係運算子:小於(<)、大於(>)、等於(=)、不等於(<>、#或!=)、小於等於(<=)、大於等於(>=) 子串包含測試($)。
第九章注意
考試要求 通過對本章的學習,理解注意的概念 注意的功能和外部表現 掌握注意的分類,容易引起無意注意的條件和有利於保持有意注意的條件 重點把握注意的品質,懂得如何運用注意的規律來組織教學 識記無意注意 有意注意 注意的範圍 注意的穩定性 注意的分配 注意的轉移 興趣 直接興趣 間接興趣 興趣效能 興趣...
第九章控制
典型例題分析 一 單項選擇題 1.能夠有效避免消極後果,降低經濟成本的控制型別是 a.前饋控制 b.現場控制 c.反饋控制 d.全面控制 解析 前饋控制 現場控制 反饋控制三大基本型別是依據控制時間點的不同而劃分的。反饋控制是在消極後果已經造成後實施的,是最為困難的控制。現場控制突出了時效性,發現問...
第九章期權
第九章期權與期權交易 一 單選題 1.期權從買方的權利來劃分,有 b a.現貨期權和 期權 c.商品期權和金融期權 b.看漲期權和看跌期權 d.美式期權和歐式期權 2.看漲期權又稱為 a a.買方期權 c.賣方期權 b.認沽期權 d.賣權 3.期權買方在期權合約到期日之前不能行使權利的這種期權是 c...