-
簡(jiǎn)介:PROTOCOLBUFFERS的應(yīng)用與分析明塵1PROTOCOLBUFFERS的介紹PROTOCOLBUFFERS是一種用于序列化結(jié)構(gòu)化數(shù)據(jù)的機(jī)制,它具有靈活、高效、自動(dòng)化的特點(diǎn)。類(lèi)似于XML,但是比XML更小巧、快捷、簡(jiǎn)單。在GOOGLE幾乎所有它內(nèi)部的RPC協(xié)議和文件格式都是采用PB。PB具有以下特點(diǎn)1平臺(tái)無(wú)關(guān)、語(yǔ)言無(wú)關(guān)2高性能比XML塊20100倍3體積小比XML小310倍4使用簡(jiǎn)單5兼容性好在這里,我做了個(gè)小實(shí)驗(yàn),將一個(gè)29230KB的自定義格式的文本數(shù)據(jù)轉(zhuǎn)換成PB和XMLPBXML轉(zhuǎn)換后的大小21011KB43202KB解析時(shí)間(100次循環(huán))18610MS169251MS完成解析所寫(xiě)代碼行數(shù)1行50行與官方說(shuō)法的差距,主要可能是因?yàn)閼?yīng)用場(chǎng)景不同,我的測(cè)試數(shù)據(jù)中字段比較長(zhǎng)表1PB與XML的實(shí)驗(yàn)比較可見(jiàn),PB作為一種輕量級(jí)的數(shù)據(jù)協(xié)議,在時(shí)間、空間上都有一定的優(yōu)勢(shì)。2PROTOCOLBUFFERS的簡(jiǎn)單應(yīng)用21創(chuàng)建流程211定義一個(gè)PROTO文件新建一個(gè)文件,命名為ADDRESSBOOKPROTO,內(nèi)容如下123456789PACKAGETUTIAL命名空間OPTIONJAVA_PACKAGE“COMEXAMPLETUTIAL“生成文件的包名OPTIONJAVA_OUTER_CLASSNAME“ADDRESSBOOKPROTOS“類(lèi)名MESSAGEPERSON要描述的結(jié)構(gòu)化數(shù)據(jù)REQUIREDSTRINGNAME1REQUIRED表示這個(gè)字段不能為空REQUIREDINT32ID2等號(hào)后面的內(nèi)容為數(shù)字別名PB通過(guò)這樣一種方式保證了數(shù)據(jù)安全性,一旦數(shù)據(jù)構(gòu)建完畢,將無(wú)法再對(duì)其進(jìn)行修改。拿PHONENUMBER這個(gè)類(lèi)來(lái)說(shuō),對(duì)成員變量NUMBER、TYPE賦值,需要以如下方式來(lái)進(jìn)行1234567PHONENUMBERBUILDERBUILDERPHONENUMBERNEWBUILDER調(diào)用SETTER賦值,SETTER返回了THIS,所以可以鏈?zhǔn)奖硎鯞UILDERSETNUMBER“111“SETTYPE1賦值完成后,調(diào)用BUILDER的BUILD方法,將返回PHONENUMBER對(duì)象PHONENUMBERPHONENUMBERBUILDERBUILD構(gòu)建完成后,可以調(diào)用WRITETO方法,將數(shù)據(jù)寫(xiě)入數(shù)據(jù)流中。23反序列化及分析一行代碼便能完成反序列化1ADDRESSBOOKLISTADDRESSBOOKPARSEFROMINPUTSTREAM或BUFFER背后PB做了很多事情1根據(jù)INPUTSTREAM或者BUFFER去構(gòu)造一個(gè)CODEDINPUTSTREAM;2然后使用生成代碼中的MERGEFROM方法,去解析二進(jìn)制數(shù)據(jù)首先調(diào)用CODEDINPUTSTREAM的READTAG,也就是從中取得KEY值(INT類(lèi)型),然后通過(guò)SWTICH塊來(lái)往對(duì)象中賦值(PB采用了BASE128VARINTS的方式來(lái)編碼這個(gè)數(shù)字,后面會(huì)介紹這種方式的)。3將數(shù)據(jù)解析完成后,會(huì)調(diào)用BUILD方法,將構(gòu)建好的對(duì)象返回。3MESSAGE的編碼特點(diǎn)PB之所以解析速度快、所占體積小,很大程度上是由它序列化的編碼特點(diǎn)來(lái)決定的。31BASE128VARINTSPB采用了BASE128VARINTS來(lái)變長(zhǎng)編碼整數(shù)1變長(zhǎng)編碼的整數(shù),它可能包含多個(gè)BYTE,對(duì)于每個(gè)BYTE的8位,其中后7位表示數(shù)值,最高的一位表示是否還有還有另一個(gè)BYTE,0表示沒(méi)有,1表示有;2越前面的BYTE表示數(shù)值的低位,越后面的BYTE表示數(shù)值的高位;例子300VARINTS編碼為1010110000000010解釋如下300的2進(jìn)制編碼為000100101100按照剛才的規(guī)則,高低位顛倒,截取最后的7為放在第一個(gè)BYTE,則第一BYTE為10101100(其中最高位1表示,后續(xù)還有BYTE);接著剩下的內(nèi)容放到第二個(gè)BYTE,為00000010(其中最高位0表示,后續(xù)無(wú)BYTE,這個(gè)數(shù)到這里截止了)。于是,合在一起為1010110000000010;32KEYVALUE如前所述,PB的MESSAGE是一系列的KEYVALUE對(duì),在二進(jìn)制數(shù)據(jù)中,使用VARINTS數(shù)字(包含了別名以及屬性類(lèi)型信息)來(lái)作為KEY,進(jìn)而通過(guò)由PB編譯器生成的代碼來(lái)構(gòu)造以及解析數(shù)據(jù)。PB將KEY編碼成下面的結(jié)構(gòu)XYYYYZZZ其中最高位X表示是否還有后續(xù)的BYTE來(lái)編碼數(shù)字別名;YYYY用于編碼別名,定義了多余16個(gè)屬性,則需要用
下載積分: 5 賞幣
上傳時(shí)間:2024-03-07
頁(yè)數(shù): 5
大?。?0.03(MB)
子文件數(shù):
-
簡(jiǎn)介:R語(yǔ)言中矩陣運(yùn)算目錄矩陣的生成,矩陣的四則運(yùn)算,矩陣的矩陣運(yùn)算,矩陣的分解。1矩陣的生成矩陣的生成1_1將向量定義成數(shù)組向量只有定義了維數(shù)向量DIM屬性后才能被看作是數(shù)組比如Z112DIMZC34AAZ1234114710225811336912注意生成矩陣是按列排列的。1_2用ARRAY函數(shù)構(gòu)造多維數(shù)組用法為ARRAYDATANADIMLENGTHDATADIMNAMESNULL參數(shù)描述DATA是一個(gè)向量數(shù)據(jù)。DIM是數(shù)組各維的長(zhǎng)度,缺省時(shí)為原向量的長(zhǎng)度。DIMNAME是數(shù)組維的名字,缺省時(shí)為空。例子X(jué)ARRAY120DIMC45X12345115913172261014183371115194481216201_3用MATRIX函數(shù)構(gòu)造矩陣函數(shù)MATRIX是構(gòu)造矩陣二維數(shù)組的函數(shù),其構(gòu)造形式為MATRIXDATANA,NROW1,NCOL1,BYROWFALSE,DIMNAMESNULL其中DATA是一個(gè)向量數(shù)據(jù),NROW是矩陣的行數(shù),NCOL是矩陣的列數(shù)當(dāng)BYROWTRUE時(shí),生成矩陣的數(shù)據(jù)按行放置,缺省時(shí)相當(dāng)于BYROWT,數(shù)據(jù)按列放置DIMNAME。是數(shù)組維的名字,缺省時(shí)為空A如構(gòu)造一個(gè)3X5階的矩陣AMATRIX115NROW3BYROWTRUEA12345112345267891031112131415X15Y215CROSSPRODX1155CROSSPRODXY11110TCROSSPRODX123451123452246810336912154481216205510152025TCROSSPRODXY12345124681024812162036121824304816243240510203040503_4向量的外積向量的外積叉積叉積設(shè)X和Y是N維向量,則XOY表示X與Y作外積例如XOY1234512468102481216203612182430481624324051020304050OUTER是更為強(qiáng)大的外積運(yùn)算函數(shù),OUTERXY計(jì)算向量二與Y的外積,它等價(jià)于XOY函數(shù)。OUTER的一般調(diào)用格式為OUTERX,Y,F(xiàn)UN””其中XY矩陣或向量,F(xiàn)UN是作外積運(yùn)算函數(shù),缺省值為乘法運(yùn)算。函數(shù)OUTER在繪制三維曲面時(shí)非常有用,它可生成一個(gè)X和Y的網(wǎng)格。3_5矩陣的乘法矩陣的乘法設(shè)A和B為兩個(gè)矩陣,通常意義下的矩陣乘法是通過(guò)AB來(lái)完成,CROSSPRODAB表示的是TAB,而TCROSSPRODAB表示的是ATB。最后我們通過(guò)運(yùn)算知道XAX為二次型。
下載積分: 6 賞幣
上傳時(shí)間:2024-03-07
頁(yè)數(shù): 9
大小: 0.03(MB)
子文件數(shù):
-
簡(jiǎn)介:1PB函數(shù)中游標(biāo)的使用列STRINGLS_BJFLDDLB_1RESET清空下拉列表框內(nèi)容DECLARECUR_TYPECURSF定義游標(biāo)NEIRONGFROMXT_GYCS表WHERENAME條件USINGSQLCA使用默認(rèn)數(shù)據(jù)對(duì)象OPENCUR_TYPE打開(kāi)游標(biāo)FETCHCUR_TYPEINTOLS_BJFL將游標(biāo)的值賦給變量DOWHILESQLCASQLCODE0判斷游標(biāo)執(zhí)行是否成功(循環(huán)的意義是取完游標(biāo)中的值)DDLB_1ADDITEMLS_BJFL如果成功,那么將值增加到下拉列表框中FETCHCUR_TYPEINTOLS_BJFL繼續(xù)取游標(biāo)值LOOPCLOSECUR_TYPE關(guān)閉游標(biāo)在使用游標(biāo)的時(shí)候注意每次從游標(biāo)中只能取一個(gè)值賦給變量,游標(biāo)中的值是一個(gè)數(shù)組型的即游標(biāo)里可能存在多個(gè)不同的值。2PB中提交數(shù)據(jù)的兩種方式和判斷方式1刪除時(shí)候直接用表WHEREGUID(行)LS_GUIDK(變量)USINGSQLCA那么提交的時(shí)候的判斷用IFSQLCASQLCODE0THENCOMMITUSINGSQLCA提交數(shù)據(jù)ELSEMESSAGEBOX“提示““數(shù)據(jù)庫(kù)更新失敗失敗原因“GTRANS_WSQLERRTEXTROLLBACKUSINGSQLCARETURNENDIF2用DATAWINDOW刪除DW_NAMEROWROWROW0刪除當(dāng)前行刪除成功返回1,錯(cuò)誤1為空返回NULL提交的時(shí)候的判斷用IFDW_NAMEUPDATE1THENCOMMITUSINGSQLCA提交數(shù)據(jù)ELSEMESSAGEBOX“提示““數(shù)據(jù)庫(kù)更新失敗失敗原因“GTRANS_WSQLERRTEXTROLLBACKUSINGSQLCARETURNENDIF總結(jié)只要是對(duì)數(shù)據(jù)庫(kù)直接操作的時(shí)候就用SQLCA事務(wù)對(duì)象SQLCODE0來(lái)進(jìn)行判斷提交,如UPDATE等都是。只要是對(duì)數(shù)據(jù)窗口進(jìn)行的操作都用DW_NAMEUPDATE1來(lái)進(jìn)行提交,如ROWROWSETITEM等都是。功能TRIGGEREVENT函數(shù)能夠觸發(fā)任何對(duì)象的事件,并立即執(zhí)行該事件的事件處理程序。語(yǔ)法格式OBJECTNAMETRIGGEREVENTEVENTWDLONG其中①OBJECTNAME是對(duì)象或控件名稱(chēng),將觸發(fā)該對(duì)象或控件的某個(gè)事件;②EVENT是要觸發(fā)的事件,其有效值既可以是標(biāo)識(shí)POWERBUILDER事件的TRIGEVENT枚舉類(lèi)型值(比如CLICKED、MODIFIED、或DOUBLECLICKED等)③WD和LONG是兩個(gè)可選參數(shù),觸發(fā)事件后其值將分別保存到系統(tǒng)全局對(duì)象MESSAGE的WDPARM和LONGPARM屬性中。例如CB_OKTRIGGEREVENTCLICKED觸發(fā)命令按鈕CB_OK的單擊事件(CLICKED),并立即執(zhí)行該事件的事件處理程序。TRIGGEREVENT很像函數(shù)調(diào)用,執(zhí)行該函數(shù)時(shí),程序進(jìn)入被觸發(fā)事件的事件處理程序中執(zhí)行,執(zhí)行完畢后返回到TRIGGEREVENT語(yǔ)句下面一行語(yǔ)句繼續(xù)執(zhí)行9對(duì)數(shù)據(jù)窗口控件DW_NAME的基本操作清除數(shù)據(jù)窗口控件DW_1數(shù)據(jù)窗口中的所有數(shù)據(jù)。DW_1RESET將數(shù)據(jù)窗口控件DW_1關(guān)聯(lián)的數(shù)據(jù)窗口對(duì)象換成名為D_GRAPHDW_1DATAOBJECT“D_GRAPH“讓數(shù)據(jù)窗口控件D_GRAPH使用系統(tǒng)缺省的事務(wù)對(duì)象SQLCADW_1SETTRANSOBJECTSQLCA讓數(shù)據(jù)窗口控件D_GRAPH從數(shù)據(jù)庫(kù)中提取數(shù)據(jù)。DW_1RETRIEVE(注在對(duì)數(shù)據(jù)窗口控件進(jìn)行操作的時(shí)候一定不要忘記設(shè)置數(shù)據(jù)窗口對(duì)象,即DW_NAMESETTRANSOBJECTSQLCASQLCA為數(shù)據(jù)對(duì)象名,系統(tǒng)默認(rèn)SQLCA)10插入行和刪除行操作1插入行ROWROW函數(shù)在數(shù)據(jù)窗口的主緩沖區(qū)中插入一個(gè)空行,其語(yǔ)法格式為DWCONTROLROWROW其中ROW是個(gè)長(zhǎng)整數(shù)(LONG型),它指定插入行的插入位置。功能在數(shù)據(jù)窗口的主緩沖區(qū)中插入一個(gè)空行例如,我們想在數(shù)據(jù)窗口DW_1中插入一行,并讓該行成為數(shù)據(jù)窗口的第10行,那么語(yǔ)句DW_1ROW10即能完成這個(gè)任務(wù)。ROW等于0時(shí)含義特殊,它表示在主緩沖區(qū)最后一行后面插入一行。ROW函數(shù)執(zhí)行成功時(shí),返回一個(gè)LONG型值指示插入行的行號(hào),執(zhí)行失敗時(shí)返回1。2刪除行ROWROW函數(shù)在數(shù)據(jù)窗口的主緩沖區(qū)(即顯示在用戶(hù)面前的數(shù)據(jù)中)中刪除一行,語(yǔ)法格式為語(yǔ)法格式DWCONTROLROWROW其中ROW為要?jiǎng)h除行的行號(hào),ROW等于0時(shí)刪除當(dāng)前行。功能刪除數(shù)據(jù)窗口主緩沖區(qū)中一行記錄。ROW函數(shù)執(zhí)行成功時(shí)返回1,失敗時(shí)返回1。例如DW_1ROW10刪除數(shù)據(jù)窗口控件DW_1中的第10行。
下載積分: 5 賞幣
上傳時(shí)間:2024-03-07
頁(yè)數(shù): 4
大?。?0.04(MB)
子文件數(shù):
-
簡(jiǎn)介:MARCOSDELPHIBOOKSESSENTIALPALWEBSITEESSENTIALPALLOCALINDEXPAL精要精要第一章第一章PAL歷史回史回顧DELPHI中使用的面向?qū)ο驪AL編程語(yǔ)言并不是BL公司1995年發(fā)布可視化開(kāi)發(fā)環(huán)境DELPHI時(shí)才有的,它只是已有BLPAL產(chǎn)品的簡(jiǎn)單擴(kuò)展。BL沒(méi)有發(fā)明PAL,但它推廣并擴(kuò)展了PAL。這一章對(duì)PAL語(yǔ)言的歷史背景及其發(fā)展歷程作一簡(jiǎn)短回顧。沃斯的PALPAL語(yǔ)言最初由瑞士蘇黎士理工學(xué)院的尼古拉斯沃斯NIKLAUSWIRTH教授在1971年設(shè)計(jì)作為ALGOL語(yǔ)言1960年設(shè)計(jì)簡(jiǎn)化本用于教學(xué)目的。設(shè)計(jì)PAL時(shí),許多編程語(yǔ)言業(yè)已存在,但只有FTRAN、C、ASSEMBLER、COBOL等少數(shù)語(yǔ)言在廣泛應(yīng)用。PAL這種新語(yǔ)言的靈魂是其語(yǔ)言規(guī)則,PAL語(yǔ)言規(guī)則的管理是通過(guò)強(qiáng)健的數(shù)據(jù)類(lèi)型概念、強(qiáng)制性的數(shù)據(jù)類(lèi)型聲明與程序結(jié)構(gòu)化控制來(lái)實(shí)現(xiàn)的,當(dāng)時(shí)設(shè)計(jì)PAL的初衷是想把這種語(yǔ)言用作程序設(shè)計(jì)課程的教學(xué)工具。TURBOPAL1983年BL公司推出了世界聞名的PAL編譯器TURBOPAL,實(shí)現(xiàn)了詹森和沃斯(JENSENWIRTH)在“PALUSERMANUALREPT”中提出的思想。由于既簡(jiǎn)潔功能又強(qiáng),TURBOPAL成為當(dāng)時(shí)最暢銷(xiāo)的編譯器之一,而且在PC平臺(tái)上非常流行。TURBOPAL中增添了集成開(kāi)發(fā)環(huán)境(IDE),在這種開(kāi)發(fā)環(huán)境中,你可在與WDSTAR兼容的文字編輯器中編輯代碼,可以運(yùn)行編譯器,查看編譯錯(cuò)誤并直接跳回到包含錯(cuò)誤的行中?,F(xiàn)在聽(tīng)起來(lái)上述功能似乎微不足道,但在TURBOPAL之前你不得不退出代碼編輯器返回到DOS,然后運(yùn)行命令行編譯器,記下錯(cuò)誤行,再打開(kāi)編輯器跳至錯(cuò)誤行,非常煩瑣。THISISACOMMENTTHISISANOTHERCOMMENTTHISISACOMMENTUPTOTHEENDOFTHELINE第一種注釋方式較簡(jiǎn)略,使用也較為普遍;第二種方式在歐洲使用較廣,因?yàn)闅W洲的鍵盤(pán)缺少大括號(hào);第三種方式的注釋是從C借用來(lái)的,只在32位版本的DELPHI中可用,它在給一行代碼加短注釋時(shí)非常有用。在這本書(shū)中我用斜體表示注釋?zhuān)么煮w表示關(guān)鍵詞,以此與默認(rèn)的DELPHI語(yǔ)法風(fēng)格表示一致。上述三種不同的注釋方式有益于進(jìn)行嵌套注釋。例如你要注銷(xiāo)一段代碼,而代碼行中又包含真正的注釋行,這時(shí)采用同一種注釋方式是不對(duì)的CODECOMMENTCREATINGPROBLEMSCODE正確的方法是插入第二種注釋方式CODETHISCOMMENTISOKCODE注意注意如果左大括號(hào)或圓括號(hào)星號(hào)后面跟美元符號(hào),那么其中的內(nèi)容就成了編譯指令,如X。實(shí)際上,編譯指令仍是注釋。例如,XTHISISACOMMENT是合法的。這既是有效的編譯指令又是一條注釋?zhuān)M管明智的程序員很可能會(huì)注意把編譯指令和注釋分開(kāi)。使用大寫(xiě)字母PAL編譯器(不象其他語(yǔ)言的編譯器)不考慮字符的大小寫(xiě),因此標(biāo)識(shí)符MYNAME、MYNAME、MYNAME、MYNAME、和MYNAME是完全相同的。總體上來(lái)說(shuō),這是PAL的一大優(yōu)點(diǎn),因?yàn)樵诖笮?xiě)敏感的語(yǔ)言中,許多語(yǔ)法錯(cuò)誤是由不正確的大寫(xiě)引起的。注意注意PAL語(yǔ)言的大小寫(xiě)不敏感特性有一個(gè)例外控件包中的REGISTER過(guò)程必須以大寫(xiě)字母R開(kāi)始,因?yàn)樾枰cCBUILDER兼容。然而大小寫(xiě)不敏感也有不便之處第一,你必須注意大小寫(xiě)不一致的標(biāo)識(shí)符實(shí)際上是相同的,以避免把他們當(dāng)成不同的元素使用;第二,你必須盡量保持大寫(xiě)使用的一致性,以提高代碼的可讀性。
下載積分: 9 賞幣
上傳時(shí)間:2024-03-07
頁(yè)數(shù): 90
大?。?0.69(MB)
子文件數(shù):
-
簡(jiǎn)介:JAVA語(yǔ)言課程教學(xué)大綱一、課程的性質(zhì)與任務(wù)一、課程的性質(zhì)與任務(wù)課程的性質(zhì)本課程是專(zhuān)業(yè)課課程的任務(wù)通過(guò)本課程的學(xué)習(xí),使學(xué)生能夠?qū)γ嫦驅(qū)ο蟮某绦蛟O(shè)計(jì)方法有一個(gè)全面而深入的了解,并掌握J(rèn)AVA語(yǔ)言特點(diǎn)及應(yīng)用。前導(dǎo)課程C語(yǔ)言程序設(shè)計(jì)后續(xù)課程高級(jí)網(wǎng)頁(yè)設(shè)計(jì)以介紹面向?qū)ο缶幊痰幕靖拍?、基本理論為重點(diǎn),結(jié)合JAVA語(yǔ)言的語(yǔ)法規(guī)則、編程特點(diǎn)和設(shè)計(jì)思想、強(qiáng)調(diào)容易發(fā)生錯(cuò)誤和編程應(yīng)注意的地方,使學(xué)生能對(duì)JAVA技術(shù)有一個(gè)總體了解,通過(guò)本課程學(xué)習(xí),使學(xué)生掌握J(rèn)AVA語(yǔ)言的基礎(chǔ)知識(shí),理解和掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思想,熟練地使用JAVA語(yǔ)言進(jìn)行程序的編寫(xiě)、編譯以及調(diào)試工作二、教學(xué)基本要求二、教學(xué)基本要求通過(guò)本課程的學(xué)習(xí),學(xué)生應(yīng)達(dá)到下列基本要求1、在理論上應(yīng)能夠掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思想、JAVA語(yǔ)言的基本編程。2、在實(shí)踐技能上能夠利用JAVA語(yǔ)言進(jìn)行比較深入的應(yīng)用程序設(shè)計(jì),并且有能力參與中大型項(xiàng)目的開(kāi)發(fā)工作。三、教學(xué)所需條件三、教學(xué)所需條件機(jī)房教學(xué),學(xué)生人手一臺(tái)計(jì)算機(jī)(能運(yùn)行WINDOWS2000操作系統(tǒng)和JDK14以上版本以及SQLSERVER2000數(shù)據(jù)庫(kù)管理系統(tǒng))。機(jī)房需具有電腦投影設(shè)備以便于教師操作演示。四、教學(xué)內(nèi)容及學(xué)時(shí)安排四、教學(xué)內(nèi)容及學(xué)時(shí)安排學(xué)時(shí)分配序號(hào)單元主要內(nèi)容重點(diǎn)難點(diǎn)學(xué)時(shí)理論實(shí)踐1JAVA入門(mén)1了解JAVA及其發(fā)展歷史2熟悉JAVA開(kāi)發(fā)和運(yùn)行環(huán)境3創(chuàng)建、編譯、運(yùn)行JAVA程序4編寫(xiě)簡(jiǎn)單的JAVAAPPLICATION和JAVAAPPLET程序5了解JAVA與萬(wàn)維網(wǎng)的關(guān)系配置JAVA運(yùn)行環(huán)境2112基本數(shù)據(jù)類(lèi)型和基本操作1編寫(xiě)簡(jiǎn)單的JAVA程序2理解標(biāo)識(shí)符、變量和常量3基本數(shù)據(jù)類(lèi)型BYTESHTINTLONGFLOATDOUBLEBOOLEAN4運(yùn)算符5表達(dá)式6熟悉JAVA的文檔管理、程序設(shè)計(jì)風(fēng)格和命名習(xí)慣數(shù)據(jù)類(lèi)型的含義2118圖形程序設(shè)計(jì)入門(mén)1描述JAVA圖形程序設(shè)計(jì)類(lèi)的層次結(jié)構(gòu)2使用框架、面板和簡(jiǎn)單用戶(hù)界面GUI組件3布局管理器–使用FLOWLAYOUTGRIDLAYOUTBDERLAYOUT管理器4在面板上繪制組件–PAINTCOMPONENT方法5熟悉COLSFONTSFONTMETRICS類(lèi)6繪制幾何圖形7理解事件驅(qū)動(dòng)程序設(shè)計(jì)的概念–事件源,監(jiān)聽(tīng)器和監(jiān)聽(tīng)接口LISTENERINTERFACE各種圖形組件、事件和監(jiān)聽(tīng)器6429創(chuàng)建用戶(hù)界面1了解各種用戶(hù)界面組件JBUTTON、JLABEL、JTEXTFIELD、JTEXTAREA、JCOMBOBOX、JLIST、JCHECKBOX、JRADIOBUTTON、JMENUBAR、JMENU、JMENUITEM、JCHECKBOXMENUITEM、JRADIOBUTTONMENUITEM、JSCROLLBAR、JSCROLLPANE、JTABBEDPANE等2利用這些組以介紹面向?qū)ο缶幊痰幕靖拍?、基本理論為重點(diǎn),結(jié)合JAVA語(yǔ)言的語(yǔ)法規(guī)則、編程特點(diǎn)和設(shè)計(jì)思想、強(qiáng)調(diào)容易發(fā)生錯(cuò)誤和編程應(yīng)注意的地方,使學(xué)生能對(duì)JAVA技術(shù)有一個(gè)總體了解,通過(guò)本課程學(xué)習(xí),使學(xué)生掌握J(rèn)AVA語(yǔ)言的基礎(chǔ)知識(shí),理解和掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思想,熟練地使用JAVA語(yǔ)言進(jìn)行程序的編寫(xiě)、編譯以及調(diào)試工作件創(chuàng)建交互式圖形用戶(hù)界面3了解如何使用消息對(duì)話框4如何在APPLICATION中創(chuàng)建多個(gè)窗口各種用戶(hù)界面組件64210APPLET和高級(jí)圖形界面1引言2APPLET類(lèi)3INIT方法4START方法5STOP方法6DESTROY方法7鼠標(biāo)事件8鍵盤(pán)事件APPLET的應(yīng)用要點(diǎn)42211異常處理1異常和異常類(lèi)2聲明異常異常處理方法422
下載積分: 5 賞幣
上傳時(shí)間:2024-03-08
頁(yè)數(shù): 5
大?。?0.08(MB)
子文件數(shù):
-
簡(jiǎn)介:1STRINGTODAY“MDYYHHMM“返回當(dāng)前系統(tǒng)日期和時(shí)間INTEGERAIFTODAY20121231THENA8ENDIF2INTEGERLI_FILENUMLI_FILENUMFILEOPEN“CDOCUMENTSSETTINGSADMINISTRAT桌面新建文本文檔“3LONGLL_LENGHLL_LENGHFILELENGTH“CEASTAATXT“得到C盤(pán)目錄下AATXT文件的長(zhǎng)度4FILEOPENFILEEXISTSSTRING型文件名字檢查指定文件是否存在5FILEREADFILEWRITE讀寫(xiě)數(shù)據(jù)6GETFILEOPENNAME“標(biāo)題”STRINGSTRING“需要打開(kāi)的文件擴(kuò)展名““條件“舉列STRINGDOCNAMENAMEDINTEGERVALUEVALUEGETFILEOPENNAME“打開(kāi)文件“DOCNAMENAMED“DOC““文本文件TXTTXT““DOC文件DOCDOC“IFVALUE1THENFILEOPENDOCNAMEENDIF顯示打開(kāi)文件對(duì)話框,之后打開(kāi)用戶(hù)選中的文件。對(duì)話框中顯示TXT和DOC類(lèi)型的文件。7GETFILESAVENAME顯示保存文件對(duì)話框,讓用戶(hù)選擇要保存的文件。(用法同上)8CHANGEDIRECTY設(shè)置為當(dāng)前目錄的目錄名稱(chēng)將當(dāng)前目錄設(shè)置為當(dāng)前目錄的父目錄,并將新的當(dāng)前目錄顯示在單行編輯框SLE_1中CHANGEDIRECTY““SLE_1TEXTGETCURRENTDIRECTY9CREATEDIRECTY要?jiǎng)?chuàng)建的目錄名稱(chēng)STRING創(chuàng)建一個(gè)目錄CREATEDIRECTY“CZCF“在C盤(pán)根目錄下創(chuàng)建一個(gè)新目錄ZCF10DIRECTYEXISTS要檢查的目錄是否存在在移動(dòng)文件之前檢查目標(biāo)文件是否存在,存在時(shí),移動(dòng)文件STRINGIS_PATH“C圖片集“IFDIRECTYEXISTSIS_PATHTHENFILEMOVE“CDOCUMENTSSETTINGSADMINISTRAT桌面5JPEG“IS_PATH“JPEG“MESSAGEBOX“圖片移動(dòng)““照片已經(jīng)移動(dòng)到““IS_PATH“”下?!癊LSEMESSAGEBOX“圖片移動(dòng)““目錄“IS_PATH”不存在“ENDIFRIGHTTRIMSTRINGSTRING刪除字符串尾部空格LOWERSTRINGSTRING將字符串的大寫(xiě)字母轉(zhuǎn)換成小寫(xiě)MATCHSTRING字串TEXTPATTERM模式BOOLEAN確定字符串中是否包含指定模式的字符模式包括起尾等跟在字符后面表示可以出現(xiàn)的次數(shù)STRINGSTARTLENGTHSTRING取字符串的子串例如“ABCDEFGH“4返回值DEFGH從第四位開(kāi)始?。↙ENGTH不指定則默認(rèn)取余下長(zhǎng)度)POSSTRING1STRING2STARTLONG在一個(gè)字符串中查找所包含的另一個(gè)字符串的起始位置POS“ABCDEFG““DE“返回值5(START從第幾位開(kāi)始查,默認(rèn)從頭開(kāi)始)REPLACESTRING1STARTNSTRING2STRING將一個(gè)字符串中指定個(gè)數(shù)的字符串替換為另一個(gè)字符串STRING1為原字符串,START為指定從哪個(gè)位置開(kāi)始替換字符串,字符串的第一個(gè)位置為1,N為指定要替換多少個(gè)字符,STRING2為替換字符列把變量的值“春眠不掘小”替換為“春眠不覺(jué)曉”STRINGNAMEREPLACE“ABCDEF“32“ZZZZ“NAME“春眠不掘小“返回值A(chǔ)BZZZZEFNAMEREPLACENAME74“覺(jué)曉“REVERSESTRINGSTRING顛倒字符串中各字符的次序SPACENSTRING生成一個(gè)由空格組成的指定字符個(gè)數(shù)的字符串TRIMSTRINGSTRING刪除字符串首部和尾部的空格UPPERSTRINGSTRING將字符串中的小寫(xiě)字母轉(zhuǎn)換成大寫(xiě)WDCAPTEXTSTRING將TEXT中每一個(gè)單詞的首字母大寫(xiě),其他字母小寫(xiě)15系統(tǒng)與環(huán)境函數(shù)CLIPBOARD提取或替換WINDOWS系統(tǒng)剪貼板的文本內(nèi)容。下面的代碼以字符串“春眠不覺(jué)曉”取代剪貼板原有的內(nèi)容,并把該內(nèi)容顯示在文本框中參數(shù)為空則顯示的當(dāng)前剪貼板內(nèi)容STRINGIS_CONAMEIS_CONAMECLIPBOARD“春眠不覺(jué)曉“SLE_1TEXTIS_CONAMECOMMPARM得到應(yīng)用程序運(yùn)行時(shí)指定的命令參數(shù)返回STRINGGETAPPLICATION得到當(dāng)前應(yīng)用對(duì)象的句柄GETENVIRONMENTENVIRONMENTINFO得到操作系統(tǒng),處理器,屏幕顯示等與系統(tǒng)相關(guān)的信息INTEGERRTNENVIRONMENTENVRTNGETENVIRONMENTENVENV是用于保存系統(tǒng)環(huán)境信息的參數(shù)GETFOCUS確定當(dāng)前焦點(diǎn)在哪個(gè)控件上引用當(dāng)前焦點(diǎn)的控件的信息賦值給變量WHICH_CONT然后把該控件的TEXT屬性的值賦給一個(gè)
下載積分: 5 賞幣
上傳時(shí)間:2024-03-07
頁(yè)數(shù): 4
大小: 0.04(MB)
子文件數(shù):
-
簡(jiǎn)介:高等學(xué)校教材PASCAL程序設(shè)計(jì)語(yǔ)言一九九九年七月修訂郝立中張成現(xiàn)高曉娟陳向榮張淑珍宋安軍編主編郝立中I前言PAL語(yǔ)言是第一個(gè)體現(xiàn)結(jié)構(gòu)化程序設(shè)計(jì)概念的計(jì)算機(jī)語(yǔ)言,因此它在60年代末70年代初的出現(xiàn)是程序設(shè)計(jì)語(yǔ)言發(fā)展史上的一個(gè)里程碑。NWIRTH教授研制PAL時(shí)提出的目標(biāo)中有兩條一、提供一種可用的表示法,以便按照系統(tǒng)化程序設(shè)計(jì)方法的新見(jiàn)解,以結(jié)構(gòu)化的、精確的方式表達(dá)程序設(shè)計(jì)的基本概念和結(jié)構(gòu)。二、適用于課堂教學(xué)的特點(diǎn),使程序設(shè)計(jì)的某些基本概念和技能得到系統(tǒng)的訓(xùn)練。這些目標(biāo)的實(shí)現(xiàn),成了PAL語(yǔ)言的鮮明特色和突出的優(yōu)點(diǎn)。因?yàn)檫@些原因,幾十年來(lái)PAL一直被公認(rèn)為一種理想的教學(xué)語(yǔ)言。盡管后來(lái)新的語(yǔ)言又出現(xiàn)了許多種,但人們普遍認(rèn)為,PAL中包含著一般程序設(shè)計(jì)語(yǔ)言的基本概念。有了PAL的基礎(chǔ),必要時(shí)再學(xué)其它語(yǔ)言也是不難的。所以,多年來(lái)PAL語(yǔ)言一直是計(jì)算機(jī)專(zhuān)業(yè)的一門(mén)重要基礎(chǔ)課。近年來(lái),隨著計(jì)算機(jī)日新月異地普及,學(xué)習(xí)計(jì)算機(jī)語(yǔ)言的需要已不限于計(jì)算機(jī)專(zhuān)業(yè),而是擴(kuò)大到了幾乎所有專(zhuān)業(yè)的學(xué)生。這樣一來(lái),對(duì)教材就有了新的要求。首先,教材必須適應(yīng)不同基礎(chǔ)和能力的讀者的需要。為達(dá)到這一點(diǎn),本書(shū)并沒(méi)有在基本概念和基本方法上減少內(nèi)容,而是注意從另外的方面降低難度。我們知道,實(shí)際的程序設(shè)計(jì)工作難以避免其復(fù)雜和繁瑣,但是教材中的例題和練習(xí)假如都使讀者陷入繁瑣的枝節(jié)之中疲于奔命的話,他們就難以集中精力理解掌握基本概念和要領(lǐng)。因此,本書(shū)的例題編寫(xiě)力求其精,避免節(jié)外生枝的東西。同時(shí)為了在不增加負(fù)擔(dān)的條件下拓寬思路,本書(shū)對(duì)某些有實(shí)際意義的問(wèn)題給出同一問(wèn)題的不同做法,并進(jìn)行對(duì)比分析。其次,幾十年的歷史表明,比起掌握一種語(yǔ)言的語(yǔ)法規(guī)則來(lái)說(shuō),更加重要的是掌握科學(xué)的程序設(shè)計(jì)思想方法。然而計(jì)算機(jī)語(yǔ)言課的教材只能以主要篇幅講述語(yǔ)言本身的規(guī)則,難以深入灌輸科學(xué)的思想方法。因?yàn)檫@些思想的道理只有在掌握了語(yǔ)言并且接觸過(guò)較大型的復(fù)雜程序后才容易講清楚。這是一個(gè)矛盾。這個(gè)矛盾,對(duì)計(jì)算機(jī)專(zhuān)業(yè)的讀者來(lái)說(shuō)問(wèn)題不大,因?yàn)樗麄冊(cè)趯W(xué)了語(yǔ)言課之后,還可以在其它計(jì)算機(jī)課程中接受科學(xué)方法的訓(xùn)練。但非計(jì)算機(jī)專(zhuān)業(yè)的讀者可能就沒(méi)有這種機(jī)會(huì)了。如果在學(xué)習(xí)計(jì)算機(jī)語(yǔ)言課的過(guò)程中,自發(fā)地養(yǎng)成了一種不科學(xué)的思想方法和壞的程序設(shè)計(jì)習(xí)慣,那就不是我們的希望了。因此本書(shū)在這方面作了努力。我們覺(jué)得,除了應(yīng)在課文中說(shuō)明科學(xué)方法的意義以外,在這方面更重要的是,應(yīng)特別注意在課文和例題里杜絕可能出現(xiàn)的反映不科學(xué)的方法和不良習(xí)慣的毛病,以免無(wú)意中給讀者樹(shù)立壞的樣板。在科學(xué)的思想方法中,我們首推抽象的方法。我們認(rèn)為,抽象的能力是從事程序設(shè)計(jì)工作所需要的最重要的一項(xiàng)能力。本書(shū)在上述兩個(gè)方面照顧了非計(jì)算機(jī)專(zhuān)業(yè)讀者的需要。同時(shí),本書(shū)對(duì)PAL的概念、規(guī)則和程序設(shè)計(jì)原理的講述并沒(méi)有降低標(biāo)準(zhǔn),而是盡量精確和完整。其目的有二一是希望本書(shū)不僅適用于非計(jì)算機(jī)專(zhuān)業(yè),同時(shí)也適應(yīng)計(jì)算機(jī)專(zhuān)業(yè)的要求。二是本書(shū)不僅在初學(xué)時(shí)可用作教材,在實(shí)際工作中還可作為備查的資料。按照后一目的,內(nèi)容要求一定程度的嚴(yán)格性和完整性。當(dāng)然,有些細(xì)節(jié)在初學(xué)時(shí)是
下載積分: 9 賞幣
上傳時(shí)間:2024-03-08
頁(yè)數(shù): 302
大小: 1.59(MB)
子文件數(shù):
-
簡(jiǎn)介:因編譯器出了問(wèn)題,加漢字注釋老是編譯不能通過(guò),故所加注釋較少,看一下LCD1602的資料就明白了電路圖如下(該圖只是仿真圖,做實(shí)物時(shí)要1腳應(yīng)加一小電阻,實(shí)物中1602還有兩個(gè)腳,是背光電源正負(fù)極,正極要加可變電阻調(diào)節(jié)亮度,網(wǎng)上能找到詳細(xì)的電路圖)原程序INCLUDEUNSIGNEDCODESTR1“COUNT“UNSIGNEDDATADISDATA1UNSIGNEDINTSNUM0WR_COM0X0CDELAY1MS5VOIDNUMPRO循環(huán)顯示數(shù)字DELAY1MS250DELAY1MS250IFSNUM20SNUM0ELSESNUMDISDATA0SNUM100X30DISDATA1SNUM0X30WR_COM0X86WR_DATDISDATA0WR_COM0X87WR_DATDISDATA1WR_COM0XC6WR_DATDISDATA0WR_COM0XC7WR_DATDISDATA1VOIDDISPLAYUNSIGNEDP顯示字符串WHILEP0WR_DATPPDELAY1MS1VOIDMAINLCD_INITWR_COM0X80DISPLAYSTR1WR_COM0XC0DISPLAYSTR1WHILE1
下載積分: 5 賞幣
上傳時(shí)間:2024-03-08
頁(yè)數(shù): 4
大小: 0.08(MB)
子文件數(shù):
-
簡(jiǎn)介:第六屆全國(guó)ITAT教育工程就業(yè)技能大賽試題第1頁(yè)單選題1、C語(yǔ)言中運(yùn)算對(duì)象必須是整型的運(yùn)算符是()。【答案】C【分?jǐn)?shù)】1分【選項(xiàng)】A、B、C、D、2、假設(shè)所有變量均為整型則執(zhí)行運(yùn)算X(A2B5BAB)后X的值是()。【答案】B【分?jǐn)?shù)】1分【選項(xiàng)】A、7B、8C、6D、23、在下列字符序列中,屬于C語(yǔ)言合法標(biāo)識(shí)符的是()?!敬鸢浮緽【分?jǐn)?shù)】1分【選項(xiàng)】A、P12AB、STUD_100C、WATER1D、88SUM4、在下列語(yǔ)句選項(xiàng)中,只有一個(gè)在功能上與其他三個(gè)語(yǔ)句不等價(jià)(其中S1和S2表示某個(gè)C語(yǔ)句),這個(gè)不等價(jià)的語(yǔ)句是()。【答案】D【分?jǐn)?shù)】1分【選項(xiàng)】A、IF(A)S1ELSES2B、IF(A)S2ELSES1C、IF(A0)S1ELSES2D、IF(A0)S1ELSES25、若二維數(shù)組定義為AMN,則在AIJ之前的元素個(gè)數(shù)為()。【答案】B【分?jǐn)?shù)】1分【選項(xiàng)】A、JMIB、IMJC、IMJ1D、JMI16、以下程序的運(yùn)行結(jié)果是()。VOIDFUN(INTN)STATICINTM2NM1M2VOIDMAIN()STATICINTM1INTIF(I1ITA2)B、PRINTF(“CN“(P)A2)C、PRINTF(“CN“PA3)D、PRINTF(“CN“(P)TA2)16、以下程序?qū)⑤敵龅淖址牵ǎ?。INCLUDE“STDIOH“MAIN()C(P)3S23’A’’B’’C’’D’’E’’F’PC(P11)PRINTF(“C“C)【答案】C【分?jǐn)?shù)】1分【選項(xiàng)】A、BB、DC、ED、F17、以下關(guān)于枚舉的程序,其運(yùn)行結(jié)果是()。第六屆全國(guó)ITAT教育工程就業(yè)技能大賽試題第3頁(yè)P(yáng)RINTF(“DN“A)【答案】D【分?jǐn)?shù)】1分【選項(xiàng)】A、20B、13C、10D、3629、以下程序功能為輸入1個(gè)正整數(shù)N計(jì)算并輸出S的前N項(xiàng)的和S12233445(1)N(N1),下劃線處應(yīng)填入的正確語(yǔ)句為()。INCLUDE“STDIOH“VOIDMAIN()INTKFLAG1NFLOATS0SCANF(“D“F(K1K’0’J2)S10SPIJ’0’PRINTF(“DN“S)【答案】C【分?jǐn)?shù)】1分【選項(xiàng)】A、69825B、63825C、6385D、69382532、下列程序片段的輸出結(jié)果是()。PRINTF(“DN“STRLEN(“ATSN0L22“))【答案】C【分?jǐn)?shù)】1分【選項(xiàng)】A、L1B、10C、9D、833、在C程序中有如下語(yǔ)句FUNC(INTX,INTY)它是()?!敬鸢浮緾【分?jǐn)?shù)】1分【選項(xiàng)】A、對(duì)函數(shù)FUNC的定義B、對(duì)函數(shù)FUNC的調(diào)用C、對(duì)函數(shù)FUNC的原型說(shuō)明D、不合法的34、下列程序運(yùn)行后的輸出結(jié)果是()。FUN(INTAINTB)IF(AB)RETURN(A)ELSERETURN(B)MAIN()INTX3Y8Z6RRFUN(FUN(XY)2Z)PRINTF(“DN“R)【答案】D【分?jǐn)?shù)】1分【選項(xiàng)】A、3B、6C、8D、1235、有如下程序該程序的輸出結(jié)果是()。LONGF(INTN)IF(N2)RETURN(F(N2)F(N3))ELSEIF(N2)RETURN(2)ELSERETURN(1)MAIN()PRINTF(“DN“F(5))【答案】C【分?jǐn)?shù)】1分【選項(xiàng)】A、2B、3C、4D、536、在C語(yǔ)言中,函數(shù)的隱含存儲(chǔ)類(lèi)別是()?!敬鸢浮緾【分?jǐn)?shù)】1分【選項(xiàng)】A、AUTOB、STATICC、EXTERND、無(wú)存儲(chǔ)類(lèi)別37、以下程序的運(yùn)行結(jié)果是()。INCLUDE“STDIOH“MAIN()INTA123456789101112INTPA5,QNULLQP5PRINTF(“DDN“,P,Q)【答案】B【分?jǐn)?shù)】1分【選項(xiàng)】A、運(yùn)行后報(bào)錯(cuò)B、611C、612D、5538、以下選項(xiàng)中,能定義S為合法的結(jié)構(gòu)體變量的是()。【答案】B【分?jǐn)?shù)】1分【選項(xiàng)】A、TYPEDEFSTRUCTABCDOUBLEAB10SB、STRUCTABCDOUBLEAB10SC、STRUCTABCDOUBLEAB10ABCSD、TYPEDEFABCDOUBLEAB10ABCS39、以下程序運(yùn)行后的輸出結(jié)果是()。INCLUDESTRUCTNODEINTNUMSTRUCTNODENEXTMAIN()STRUCTNODEPQRP(STRUCTNODE)MALLOC(SIZEOF(STRUCTNODE))
下載積分: 6 賞幣
上傳時(shí)間:2024-03-08
頁(yè)數(shù): 7
大?。?0.14(MB)
子文件數(shù):
-
簡(jiǎn)介:FTRAN語(yǔ)言自學(xué)提綱第一章1FTRAN基礎(chǔ)1一個(gè)FTRAN程序由一個(gè)主程序或一個(gè)主程序與若干個(gè)子程序組成。但一個(gè)完整的FTRAN程序只能有一個(gè)主程序,主程序的第一個(gè)語(yǔ)句是PROGRAM語(yǔ)句,用以說(shuō)明主程序的名稱(chēng)。這個(gè)語(yǔ)句也可以省略,省略時(shí)默認(rèn)為主程序的名稱(chēng)為MAIN。2FTRAN的子程序主要有三種⑴函數(shù)子程序,其第一個(gè)語(yǔ)句為FUNCTION;⑵子例行子程序,其第一個(gè)語(yǔ)句為SUBROUTINE;⑶數(shù)據(jù)塊子程序,其第一個(gè)語(yǔ)句為BLOCKDATA。主程序與各個(gè)子程序可以獨(dú)立編譯,最后再鏈接成一個(gè)可執(zhí)行程序。在編寫(xiě)并輸入一個(gè)FTRAN程序時(shí),既可以將主程序與各個(gè)子程序存放在一個(gè)文件中,也可以將它們分別存放在不同的文件中。但必須注意,主程序與各個(gè)子程序都是獨(dú)立的程序單位,每個(gè)程序單位的最后一行必須用END語(yǔ)句作為結(jié)束。在主程序中,雖然END語(yǔ)句還具有使程序停止運(yùn)行的作用,但由于一個(gè)程序單位只能在最后一行有END語(yǔ)句,因此,在程序的其它位置處需要停止運(yùn)行時(shí),只能用STOP語(yǔ)句,不能用END語(yǔ)句。同樣的道理,在子程序中,雖然END語(yǔ)句還具有使程序流程返回到調(diào)用程序的作用,但在子程序的其它位置(不是最后一行)需要返回到調(diào)用程序時(shí),只能用RETURN語(yǔ)句,不能用END語(yǔ)句。3FOPTRAN源程序的書(shū)寫(xiě)格式有嚴(yán)格的規(guī)定。⑴一行中第一列為“C”或“”時(shí),該行被認(rèn)為是注釋行。注釋行可以寫(xiě)在四個(gè)區(qū)中的一個(gè)區(qū),且注釋行可以出現(xiàn)在程序單位的任何位置。但注釋行不能有續(xù)行,需要時(shí)可以將連續(xù)若干行都定義為注釋行。⑵FTRAN語(yǔ)句部分不能占用標(biāo)號(hào)區(qū)及續(xù)行標(biāo)志區(qū),只能從第七列開(kāi)始。當(dāng)語(yǔ)句太長(zhǎng)時(shí),可以使用續(xù)行。在繼續(xù)行的標(biāo)號(hào)區(qū)內(nèi)必須為空白(即繼續(xù)行不允許有標(biāo)號(hào)),標(biāo)號(hào)只能出現(xiàn)在起始行上。⑶起始行與繼續(xù)行或各繼續(xù)行之間的空格不起作用,因此,對(duì)于一般的語(yǔ)句,可以不必到72列才轉(zhuǎn)為繼續(xù)行,繼續(xù)行也不必一定要從第7列接著寫(xiě),但是,包括在引號(hào)內(nèi)的字符串中的空格是有效的,因此,對(duì)于字符串要使用繼續(xù)行時(shí)應(yīng)特別注意,最好寫(xiě)到一行的72列時(shí)再轉(zhuǎn)為繼續(xù)行,且要從繼續(xù)行的第7列接著寫(xiě)。⑷標(biāo)號(hào)為無(wú)符號(hào)整數(shù),不能出現(xiàn)正負(fù)號(hào)。4變量定義的IN規(guī)則與別的程序設(shè)計(jì)語(yǔ)言不同,F(xiàn)TRAN語(yǔ)言中的實(shí)型變量和整型變量可以按隱含規(guī)則確定。這個(gè)隱含規(guī)則就是IN規(guī)則。IN規(guī)則在一定程度上為用戶(hù)提供了方便,對(duì)于常用的一些變量(如循環(huán)控制變量等)就不需要專(zhuān)門(mén)的類(lèi)型語(yǔ)句進(jìn)行說(shuō)明,只要用合適的變量名就可以滿(mǎn)足對(duì)變量類(lèi)型的需要。但這也容易使用戶(hù)疏忽了對(duì)變量類(lèi)型的說(shuō)明,以IN開(kāi)頭的變量名實(shí)際是實(shí)型變量,但忘了用REAL語(yǔ)句說(shuō)明,或者以非IN開(kāi)頭的變量名實(shí)際是整型變量,也忘了用INTEGER語(yǔ)句說(shuō)明。另外,還要提醒大家注意由于FTRAN語(yǔ)言中實(shí)型與整型變量遵循IN規(guī)則,因此,在有關(guān)FTRAN的練習(xí)或考核中,有時(shí)會(huì)省略對(duì)變量類(lèi)型的說(shuō)明,在這種情況下,應(yīng)根據(jù)IN規(guī)則來(lái)判斷變量的類(lèi)型。總之,F(xiàn)TRAN中的所有變量都是需要說(shuō)明其類(lèi)型的,而不能理解為整型與實(shí)型變量不實(shí)型變量S中的值只有10。解決這個(gè)問(wèn)題的措施是,只需要在表達(dá)式中將“IN”改成“10N”。類(lèi)似于上例中的錯(cuò)誤是很容易發(fā)生的。本章需完成以下習(xí)題P10一、二、三、四第二章計(jì)算賦值語(yǔ)句、參數(shù)說(shuō)明語(yǔ)句、賦初值語(yǔ)句與標(biāo)號(hào)賦值語(yǔ)句本章重點(diǎn)為計(jì)算賦值語(yǔ)句、參數(shù)說(shuō)明語(yǔ)句和賦初值語(yǔ)句。計(jì)算賦值語(yǔ)句1數(shù)值型計(jì)算賦值語(yǔ)句執(zhí)行過(guò)程為計(jì)算賦值號(hào)右側(cè)表達(dá)的值,轉(zhuǎn)換成左側(cè)變量的類(lèi)型,最后賦值。2邏輯型計(jì)算賦值語(yǔ)句邏輯賦值語(yǔ)句賦值號(hào)左側(cè)的變量必須是邏輯型變量,右側(cè)可以是一個(gè)邏輯表達(dá)式,也可以是一個(gè)邏輯常數(shù)、邏輯型變量或關(guān)系表達(dá)式。3字符型計(jì)算賦值語(yǔ)句字符型賦值語(yǔ)句的賦值號(hào)左側(cè)的變量必須為字符型,而且需說(shuō)明其長(zhǎng)度,如右側(cè)的字符表達(dá)式長(zhǎng)度超出了左側(cè)變量的長(zhǎng)度則多出的字符被截去。參數(shù)說(shuō)明語(yǔ)句參數(shù)語(yǔ)句用來(lái)給常數(shù)命名,經(jīng)說(shuō)明后的常數(shù)為符號(hào)常數(shù)。其類(lèi)型可以用隱含說(shuō)明、顯式說(shuō)明等方法來(lái)說(shuō)明。而且符號(hào)常數(shù)一經(jīng)定義,其值在運(yùn)算過(guò)程中不能以任何形式來(lái)改變。賦初值語(yǔ)句此語(yǔ)句為說(shuō)明語(yǔ)句,但可以出現(xiàn)在程序的任何位置。可用于變量、數(shù)組、數(shù)組元素、子串等量的賦值。本章完成以下習(xí)題P18一、二第三章數(shù)據(jù)的輸入本章的重點(diǎn)放在1表控格式的輸入中應(yīng)特別注意不同類(lèi)型數(shù)據(jù)的輸入方法。2字符型變量要注意使用格式輸入和表控輸入的區(qū)別。3注意READ語(yǔ)句與FMAT語(yǔ)句的聯(lián)用,要多做練習(xí)。本章需重點(diǎn)完成以下習(xí)題P26一、二、四、七第四章數(shù)據(jù)的輸出本章的重點(diǎn)放在1表控格式輸出中特別注意不同類(lèi)型數(shù)據(jù)的輸出形式及所占位數(shù)。2格式輸出時(shí)注意以下編輯描述符的使用I、F、E、D、A、L。3注意WRITE語(yǔ)句與FMAT語(yǔ)句的聯(lián)用,要多做練習(xí)。本章需重點(diǎn)完成以下習(xí)題P42一、二、四、八、九、十二、十三第五章結(jié)束、停、暫停與控制轉(zhuǎn)移語(yǔ)句本章只作一般性了解。注意GOTO語(yǔ)句的使用。第六章判定與選擇1塊IF結(jié)構(gòu)塊IF結(jié)構(gòu)的一般形式如下IF(邏輯表達(dá)式1,)THEN(塊IF語(yǔ)句)
下載積分: 6 賞幣
上傳時(shí)間:2024-03-08
頁(yè)數(shù): 7
大?。?0.05(MB)
子文件數(shù):
-
簡(jiǎn)介:一、選擇題下列各題ABCD四個(gè)選項(xiàng)中,只有一個(gè)選項(xiàng)是正確的,請(qǐng)將正確選項(xiàng)涂在答題卡的相應(yīng)位置上,答在試卷上不得分。1、不合法的整數(shù)是(B)。A035B436C0532D3462、下列合法的字符常量是(D)。A“F”BXC65D‘XAB’3、設(shè)有整型變量X單精度變量Y55,表達(dá)式XFLOATY3INTY4執(zhí)行后,X的值為(A)。A17B17500000C175D154、在C語(yǔ)言中,負(fù)整數(shù)在內(nèi)存中以(A)形式釋放。A)補(bǔ)碼B)BCD碼C)反碼D)十進(jìn)制數(shù)5、在C語(yǔ)言中,要求參加運(yùn)算的數(shù)必須是整數(shù)的運(yùn)算符是(C)。A)B)C)D)6、(D)是C語(yǔ)言中非法的數(shù)據(jù)類(lèi)型關(guān)鍵字。A)FLOATBSINGEDCINTEGERD7、現(xiàn)已定義整形變量INTI1執(zhí)行循環(huán)語(yǔ)句WHILEI5后I的值為(C)。A)1B)5C)6D以上三個(gè)答案都不正確8、下列語(yǔ)句的輸出結(jié)果是(D)。PRINTF“FN”FLOAT242;A有語(yǔ)法錯(cuò)誤不能通過(guò)編譯B)3C)30D)30000009、C語(yǔ)言中,整數(shù)8在內(nèi)存中的存儲(chǔ)形式是(A)。A)1111,1111,1111,1000B)1000,0000,0000,1000AXSIZEOFINTBXSIZEOF314CPRINTF“D”AA1B–C1DPRINTF“D”XX18、C語(yǔ)言中,邏輯“真”等價(jià)于(C)。A)大于零的數(shù)B)大于零的整數(shù)C)非零的數(shù)D)非零的整數(shù)19、下列語(yǔ)句中,符合語(yǔ)法的語(yǔ)句式(D)。AAB3BA7CACB36DA8BA720、若X為FLOAT型變量,則以列程序段結(jié)果是(B)。X12346789PRINTF“21F”XA輸出格式描述符的域?qū)挾炔粔颍荒茌敵鯞)輸出為12347C)輸出為12346D)輸出為1234621、下面函數(shù)的功能是(A)。INTFUNLXYXWHILEYRETURNYX1A求字符串的長(zhǎng)度B)比較兩個(gè)字符串的大小C)將字符串X復(fù)制到字符串YD)將字符串X連接到字符串Y后面22、指針變量A所指的字符串長(zhǎng)度為(D)。A”N”MYNAMEIS”ZHANGLI”N”A26B27C28D2323、若有以下說(shuō)明和語(yǔ)句,則輸出結(jié)果是(B)。SP””N”P(pán)RINTF“D”STRLENSPA6B3C5D字符串中有非法自負(fù),輸出值不定24、若有以下的說(shuō)明語(yǔ)句,則對(duì)字符串中字符的不正確引用是(其中0I6)DSTRP“STRING”ASTRPBSTRPICSTRPIDSTRP25、函數(shù)調(diào)用STRCATSTRCPYSTR1STR2STR3的功能是(C)。A)將串STR1復(fù)制到串STR2中后再連接到串STR3之后B)將串STR1連接到串STR2之后再?gòu)?fù)制到串STR3之后C)將串STR2復(fù)制到串STR1中后再將串STR3連接到串STR1之后
下載積分: 8 賞幣
上傳時(shí)間:2024-03-08
頁(yè)數(shù): 47
大?。?0.18(MB)
子文件數(shù):
-
簡(jiǎn)介:1什么是分配內(nèi)存,什么是釋放內(nèi)存操作系統(tǒng)把某一快內(nèi)存空間的使用權(quán)力分配給該程序叫分配內(nèi)存操作系統(tǒng)把分配給該程序的內(nèi)存空間的使用權(quán)力收回,該程序就不能夠再使用這一塊內(nèi)存空間,這叫釋放內(nèi)存附注釋放內(nèi)存不是把該內(nèi)存的內(nèi)容清零(就是把指向給內(nèi)存的指針斬?cái)啵斐蓱掖怪羔?,也就是?nèi)存管理困難2變量為什么必須得初始化不初始化,則變量通常就是垃圾值3函數(shù)的優(yōu)點(diǎn)1〉避免重復(fù)性操作2〉有利于程序的模塊化3但是帶來(lái)啦,調(diào)用函數(shù)增加開(kāi)銷(xiāo)4什么是指針,什么是地址,什么是指針變量,三者之間是什么關(guān)系1地址是內(nèi)存單元的編號(hào),指針就是地址,指針和地址是同一個(gè)概念指針變量是存放內(nèi)存單元編號(hào)的變量指針變量和指針是兩個(gè)完全不同的概念,只不過(guò)人們通常把指針變量簡(jiǎn)稱(chēng)為指針5請(qǐng)寫(xiě)出靜態(tài)變量和動(dòng)態(tài)變量的異同同都需要分配內(nèi)存不同靜態(tài)變量是由系統(tǒng)自動(dòng)分配,自動(dòng)釋放,程序員無(wú)法在程序運(yùn)行的過(guò)程中手動(dòng)分配也無(wú)法在程序運(yùn)行的過(guò)程中手動(dòng)釋放,靜態(tài)變量是在棧中分配的,只有在函數(shù)終止之后,靜態(tài)變量的存儲(chǔ)空間才會(huì)被系統(tǒng)自動(dòng)釋放動(dòng)態(tài)變量是由程序員手動(dòng)分配,手動(dòng)釋放,程序員可以在程序運(yùn)行的過(guò)程當(dāng)中手動(dòng)分配也可以在程序運(yùn)行的過(guò)程當(dāng)中手動(dòng)釋放,動(dòng)態(tài)變量是在堆中被分配的,程序員可以在函數(shù)當(dāng)中的任何一個(gè)時(shí)刻手動(dòng)的釋放動(dòng)態(tài)變量的空間,不需要等到函數(shù)終止時(shí)才釋放6字符串的操作與代碼測(cè)試2011年11月29日233217字符串的兩種存儲(chǔ)方式1將字符串存放在字符數(shù)組中2將字符串存放在一個(gè)指針變量中INCLUDEINCLUDEINTMAINVOIDP“FIRST“定義指針變量P,該指針變量指向字符串的首地址INTI0WHILEPI0INTA629105581INTI0INTJ5INTTEMPWHILEIINTMAINVOIDINTA34123456789101112INTA34123456789101112INTIJFI0I3IFJ0J4J
下載積分: 6 賞幣
上傳時(shí)間:2024-03-07
頁(yè)數(shù): 20
大?。?0.14(MB)
子文件數(shù):
-
簡(jiǎn)介:推薦C語(yǔ)言程序設(shè)計(jì)譚浩強(qiáng)1C語(yǔ)言概述11C語(yǔ)言的發(fā)展過(guò)程12當(dāng)代最優(yōu)秀的程序設(shè)計(jì)語(yǔ)言13C語(yǔ)言版本14C語(yǔ)言的特點(diǎn)15面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言16C和C++17簡(jiǎn)單的C程序介紹18輸入和輸出函數(shù)19C源程序的結(jié)構(gòu)特點(diǎn)110書(shū)寫(xiě)程序時(shí)應(yīng)遵循的規(guī)則111C語(yǔ)言的字符集112C語(yǔ)言詞匯113TURBOC20集成開(kāi)發(fā)環(huán)境的使用1131TURBOC20簡(jiǎn)介和啟動(dòng)1132TURBOC20集成開(kāi)發(fā)環(huán)境1133FILE菜單1134EDIT菜單1135RUN菜單1136COMPILE菜單11137PROJECT菜單1138OPTIONS菜單1139DEBUG菜單11310BREAKWATCH菜單11311TURBOC20的配置文件2程序的靈魂算法21算法的概念2122簡(jiǎn)單算法舉例2123算法的特性2424怎樣表示一個(gè)算法243310逗號(hào)運(yùn)算符和逗號(hào)表達(dá)式48311小結(jié)493111C的數(shù)據(jù)類(lèi)型493112基本類(lèi)型的分類(lèi)及特點(diǎn)493113常量后綴493114常量類(lèi)型493115數(shù)據(jù)類(lèi)型轉(zhuǎn)換493116運(yùn)算符優(yōu)先級(jí)和結(jié)合性50表達(dá)式504最簡(jiǎn)單的C程序設(shè)計(jì)順序程序設(shè)計(jì)41C語(yǔ)句概述5142賦值語(yǔ)句5343數(shù)據(jù)輸入輸出的概念及在C語(yǔ)言中的實(shí)現(xiàn)5444字符數(shù)據(jù)的輸入輸出54441PUT函數(shù)(字符輸出函數(shù))54442GET函數(shù)(鍵盤(pán)輸入函數(shù))5545格式輸入與輸出55451PRINTF函數(shù)(格式輸出函數(shù))56452SCANF函數(shù)格式輸入函數(shù)58順序結(jié)構(gòu)程序設(shè)計(jì)舉例6045分支結(jié)構(gòu)程序51關(guān)系運(yùn)算符和表達(dá)式61511關(guān)系運(yùn)算符及其優(yōu)先次序61512關(guān)系表達(dá)式6152邏輯運(yùn)算符和表達(dá)式62521邏輯運(yùn)算符極其優(yōu)先次序62522邏輯運(yùn)算的值63523邏輯表達(dá)式6353IF語(yǔ)句64531IF語(yǔ)句的三種形式64532IF語(yǔ)句的嵌套67
下載積分: 9 賞幣
上傳時(shí)間:2024-03-07
頁(yè)數(shù): 860
大?。?2.1(MB)
子文件數(shù):
-
簡(jiǎn)介:第一章C語(yǔ)言概述一、選擇題1、一個(gè)C程序的執(zhí)行是從(A)。A本程序的MAIN函數(shù)開(kāi)始,到MAIN函數(shù)結(jié)束B(niǎo)本程序文件的第一個(gè)函數(shù)開(kāi)始,到本程序文件的最后一個(gè)函數(shù)結(jié)束C本程序的MAIN函數(shù)開(kāi)始,到本程序文件的最后一個(gè)函數(shù)結(jié)束D本程序文件的第一個(gè)函數(shù)開(kāi)始,到本程序MAIN函數(shù)結(jié)束2、在C語(yǔ)言中,每個(gè)語(yǔ)句必須以(D)結(jié)束。A回車(chē)符B冒號(hào)C逗號(hào)D分號(hào)3、C語(yǔ)言規(guī)定在一個(gè)源程序中,MAIN函數(shù)的位置(C)。A必須在最開(kāi)始B必須在系統(tǒng)調(diào)用的庫(kù)函數(shù)的后面C可以任意D必須在最后4、一個(gè)C語(yǔ)言程序是由(B)。A一個(gè)主程序和若干子程序組成B函數(shù)組成C若干過(guò)程組成D若干子程序組成5、下列說(shuō)法中錯(cuò)誤的是D。A主函數(shù)可以分為兩個(gè)部分主函數(shù)說(shuō)明部分和主函數(shù)體B主函數(shù)可以調(diào)用任何非主函數(shù)的其他函數(shù)C任何非主函數(shù)可以調(diào)用其他任何非主函數(shù)D程序可以從任何非主函數(shù)開(kāi)始執(zhí)行6、用C語(yǔ)言編寫(xiě)的源文件經(jīng)過(guò)編譯,若沒(méi)有產(chǎn)生編譯錯(cuò)誤,則系統(tǒng)將C。A生成可執(zhí)行目標(biāo)文件B生成目標(biāo)文件C輸出運(yùn)行結(jié)果D自動(dòng)保存源文件二、填空題1、C語(yǔ)言只有32個(gè)關(guān)鍵字和9種控制語(yǔ)句。2、每個(gè)源程序有且只有一個(gè)MAIN函數(shù),系統(tǒng)總是從該函數(shù)開(kāi)始執(zhí)行C語(yǔ)言程序。3、C語(yǔ)言程序的注釋可以出現(xiàn)在程序中的任何地方,它總是以符號(hào)作為開(kāi)始標(biāo)記,以符號(hào)作為結(jié)束標(biāo)記。4、C語(yǔ)言中,輸入操作是由庫(kù)函數(shù)SCANF完成的,輸出操作是由庫(kù)函數(shù)PRINTF完成的。5、系統(tǒng)默認(rèn)的C語(yǔ)言源程序文件的擴(kuò)展名是C,經(jīng)過(guò)編譯后生成的目標(biāo)文件的擴(kuò)展名是OBJ,經(jīng)過(guò)連接后生成的可執(zhí)行文件的擴(kuò)展名是EXE。6、C語(yǔ)言的標(biāo)識(shí)符只能由字母、數(shù)字和下劃線三種字符組成。第三章數(shù)據(jù)類(lèi)型、運(yùn)算符和表達(dá)式20、C語(yǔ)言中,要求運(yùn)算對(duì)象只能為整數(shù)的運(yùn)算符是(A)。ABCD21、若有說(shuō)明語(yǔ)句C72;則變量C在內(nèi)存占用的字節(jié)數(shù)是(A)。A1B2C3D422、字符串“ABC“在內(nèi)存占用的字節(jié)數(shù)是(B)。A3B4C6D823、要為字符型變量A賦初值,下列語(yǔ)句中哪一個(gè)是正確的(B)。AA“3“BA’3’CADA24、下列不正確的轉(zhuǎn)義字符是(C)。ABC074D0二、填空題1、C語(yǔ)言中的邏輯值“真”是用1表示的,邏輯值“假”是用0表示的。2、若X和N都是INT型變量,且X的初值為12,N的初值為5,則計(jì)算表達(dá)式XN2后X的值為0。3、設(shè)CWA1B2D5則表達(dá)式X1CYC2A5BBAC“A“D以上都不對(duì)4若一個(gè)INT類(lèi)型的數(shù)據(jù)占2字節(jié),則程序段INTX1PRINTF“UD“XX的輸出結(jié)果是。A
下載積分: 8 賞幣
上傳時(shí)間:2024-03-08
頁(yè)數(shù): 40
大?。?0.3(MB)
子文件數(shù):
-
簡(jiǎn)介:編寫(xiě)一程序P111C實(shí)現(xiàn)以下功能XX只考慮整數(shù)INT且必須定義為必須定義為INTINT、但FX完全可能超過(guò)INT的表示范圍通過(guò)鍵盤(pán)輸入輸入前給出提示PLEASEINPUTX,然后計(jì)算并在屏幕上輸出函數(shù)值。編程可用素材PRINTF“PLEASEINPUTX“、PRINTF“NF“。┌5X27X0程序的運(yùn)行效果應(yīng)類(lèi)似地如圖1所示,圖1中的3是從鍵盤(pán)輸入的內(nèi)容。圖1程序運(yùn)行效果示例單擊此處上傳所設(shè)計(jì)的程序單擊此處上傳所設(shè)計(jì)的程序“P111C”“P111C”分類(lèi)1編寫(xiě)一程序P113C實(shí)現(xiàn)以下功能已知某銀行整存整取存款不同期限的年息利率分別為315期限一年,363期限二年,402期限三年,469期限五年,536期限八年。從鍵盤(pán)上輸入存錢(qián)的本金以元為單位,必須定義為必須定義為INTINT且應(yīng)考慮金額很大的情況和存款期限只考慮12358,求到期時(shí)能從銀行得到的利息以元為單位,應(yīng)考慮有小數(shù),不計(jì)復(fù)利。編程可用素材PRINTF“NPLEASEINPUTBENJINCUNQI“、PRINTF“NLIXIYUAN“。程序的運(yùn)行效果應(yīng)類(lèi)似地如圖1所示,圖1中的100008是從鍵盤(pán)輸入的內(nèi)容。圖3程序運(yùn)行效果示例取余時(shí)除數(shù)為0圖4程序運(yùn)行效果示例相除時(shí)除數(shù)為0單擊此處上傳所設(shè)計(jì)的程序單擊此處上傳所設(shè)計(jì)的程序“P114C”“P114C”4分類(lèi)1編寫(xiě)一程序P702C實(shí)現(xiàn)以下功能輸入月份,打印2003年該月有幾天。當(dāng)輸入的月份超范圍時(shí),應(yīng)顯示“INVALIDMONTHINPUT”。編程可用素材PRINTF“PLEASEINPUTTHEMONTHNUMBER“、PRINTF“NINVALIDMONTHINPUTN“、PRINTF“N2003HASDAYSN“。程序的運(yùn)行效果應(yīng)類(lèi)似地如圖1和圖2所示,圖1中的4和圖2中的13是從鍵盤(pán)輸入的內(nèi)容。圖1程序運(yùn)行效果示例
下載積分: 8 賞幣
上傳時(shí)間:2024-03-07
頁(yè)數(shù): 30
大?。?0.98(MB)
子文件數(shù):