在線咨詢

  創建網站不知從何開始?

  撥打銷售熱線,直接對話專家

  13179796791

  如有疑問:

 

填寫信息,讓專家聯系您
聯系人*
性別*
企業名稱*
聯系電話*
驗證碼*
 看不清?換一張

3.4 Visual FoxPro的表達式

發表時間:2020-03-05 10:52


3.4 Visual FoxPro的表達式

一、認識

·表達式即運算對象(常量、變量、函數)通過運算符號進行運算的式子。

·不同的運算符號有不同的優先級,運算時,優先級高的運算符號先算,優先級低的運算符號后算,同等優先級的自左至右進行運算。如10+30-20/5。

·為了讓優先級低的運算符先算,應使用圓括號。注意:只能使用圓括號。

·表達式中的所有符號應并列書寫,不能像數學中那樣書寫。

·單個運算對象,也認為是表達式(表達式特例)。

二、數值表達式

1、認識

對數值型、貨幣型數據進行運算的式子,其值為數值型或貨幣型。

2、運算符及優先級

**或^:乘方運算;

*:乘法運算;

/:除運算;

%:求余運算;

+:加運算;

-:減運算。

例:試寫出下列算式的VFP表達式。

三、字符表達式

1、認識

對字符型數據進行運算的式子,其結果仍為字符型。

2、運算符及優先級

+:將前后兩個字符串進行合并,如"abc   "+"def",其結果為字符串"abc   def"。

-:將前后兩個字符串進行合并,但將前面字符串尾部的空格挪到合并后的字符串尾部。如"abc "-"def",其結果為字符串"abcdef   "。

四、日期時間表達式

1、認識

有日期時間型數據參加運算的式子,其結果類型依情況而定。

2、表達式實例

·日期+數值   或   數值+日期

·日期-數值

注意:不能數值-日期

·日期-日期

·日期時間+數值   或   數值+日期時間

·日期時間-數值

注意:不能數值-日期時間

·日期時間-日期時間

五、關系表達式

1、認識

對類型一致的數據進行比較的式子,如A<B,2+3>56,'春節'>'圣誕節'等。

如果比較成立,結果為邏輯值真,否則為假。

2、比較符號

·比較符號又叫關系運算符。

·關系運算符:(見關系運算符)

思考:關系表達式“1 < 2 < 3”的值是什么?

3、VFP中數據大小的規定

除使用$(屬于)關系運算符的關系表達式外,關系表達式的運算結果和關系運算符兩邊數據的大小密切相關,因此,必須清楚VFP中關于數據大小的規定。

1)數值型、貨幣型的大小

同算術中大小。

2)日期型、日期時間型的大小

靠后的日期、時間大。

3)邏輯型的大小

真大于假。

4)字符型的大小

·單個字符大小的規定

當設置為Machine(機器)順序時

字符大?。嚎崭?lt;數字字符(’0’到’9’)<大寫字母<小寫字母;

漢字大?。撼S脻h字以拼音順序排大小,如’李’小于’張’。

當設置為PinYin(拼音)順序時

字符大?。嚎崭?lt;數字字符(’0’到’9’) <’a’<’A’<’b’<’B’……;

漢字大?。阂云匆繇樞蚺糯笮?,如’李’小于’張’。

當設置為Stroke(筆畫)順序時

字符大?。嚎崭?lt;數字字符(’0’到’9’)<’a’<’A’<’b’<’B’……;

漢字大?。阂詴鴮懝P畫多少確定大小,筆畫多的大。

三種順序的設置

方法一:“選項”對話框中設置。

方法二:用命令設置:

setcollate to "Machine"

setcollate to "PinYin"

setcollate to "Stroke"

·字符串大小的規定

基本規則

自左至右,逐個字符進行比較,直到某個字符能分辨出大小為止。

非精確比較方式(默認方式)

在前面字符沒能區分出大小的情況下,兩個字符串的比較以右邊字符串的結束而結束。

精確比較方式

在前面字符沒能區分出大小的情況下,兩個字符串的比較以最長字符串的結束而結束。

說明:關系運算符“=”按當前的比較方式進行比較,“==”始終以精確方式進行比較。

比較方式的設置

方法一:“選項”對話框中進行。

方法二:命令

SETEXACT ON    &&設置為精確比較方式

SETEXACT OFF   &&設置為非精確比較方式

六、邏輯表達式

1、認識

對邏輯型數據進行運算的式子,結果為邏輯型。

2、運算符及優先級

.not.或not或?。悍沁\算;

.and.或and:與運算;

.or.或or:或運算。

(見邏輯運算符含義)

思考:邏輯表達式“not .f. or .t. and .f.”的值?

3、邏輯表達式、關系表達式的意義

VFP中,使用關系表達式來表示單個條件,邏輯表達式表示組合條件。組合條件中,如果兩個條件要求同時滿足,兩個條件之間使用“與”運算;如果兩個條件只要求滿足其中一個,兩個條件之間使用“或”運算;如果要表示出某個條件的反條件,對該條件進行“非”運算。

當邏輯表達式、關系表達式的值為真時,所表示的條件成立;當邏輯表達式、關系表達式的值為假時,所表示的條件不成立。

例:試用關系表達式或邏輯表達式表示如下條件。

1)A大于5

2)A不大于5

3)A大于5且B小于10

4)A大于5或B小于10

5)A在5和20之間

6)A不在5和20之間

4、說明

一個邏輯表達式,它的運算對象往往是關系表達式,而關系表達式的運算對象又往往是數值表達式、字符表達式或日期時間表達式。也就是說,不同類型的運算符可能會出現在同一個表達式中,這時,運算符的優先順序是:先進行數值運算、字符運算和日期時間運算,然后進行關系運算,最后進行邏輯運算。



website qrcode

掃描查看手機版網站

在線服務
 
 
 工作時間
周一至周日 :7:00-22:00
 聯系方式
技術支持:13179796791
郵箱:yzflwlkj@163.com