C語言程序的設計教程實驗與復習題解答_第1頁
C語言程序的設計教程實驗與復習題解答_第2頁
C語言程序的設計教程實驗與復習題解答_第3頁
C語言程序的設計教程實驗與復習題解答_第4頁
已閱讀5頁,還剩119頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

實驗指導書容ー、上機指南Turboc2.0二、實驗安排三、教材習題解答(第1章一第11章)第一部分TurboC集成開發(fā)環(huán)境簡介TurboC是ー個集程序編輯、編譯、連接、調試為一體的C語言程序開發(fā)環(huán)境,具有速度快、效率高、功能強、使用方便等優(yōu)點。C語言程序開發(fā)人員可以在該集成開發(fā)環(huán)境下利用菜單操作進行編輯、編譯、連接、調試、運行以及環(huán)境設置等工作。TurboC的安裝TurboC的安裝非常方便,只需將TurboC系統(tǒng)中的安裝軟盤(含有install.exe程序)插入A:驅動器中,然后將A:盤設定為當前盤,鍵入install,后,安裝即開始,在安裝過程中,只需按照屏幕提示信息進行操作即可。如果采用系統(tǒng)提供的默認方式安裝,則安裝完成后,用戶的C盤上將會有以下主要的目錄和文件:C:\TC(其中包括TC.EXE、TCC.EXE,MAKE.EXE,等可執(zhí)行文件)C:\TC\INCLUDE(其中包括stdio.h,math,h,string,h等頭文件)C:\TC\LIB(其中包括maths,lib,mathl.lib,graphics,lib等庫函數(shù)文件)C:\TC\BG1(其中包括多種顯示適配器的驅動程序)2,啟動TurboC(1)在DOS平臺上啟動使用下面的DOS命令可以進入TurboC的集成開發(fā)環(huán)境:C:\>CD\TCZ(將TC目錄設置為當前目錄)C:\TOTCZ(執(zhí)行tc.exe文件)(2)在WINDOWS平臺上啟動進入包含tc.exe的文件夾,用鼠標雙擊tc.exe文件的圖標,即可進入TurboC的集成開發(fā)環(huán)境。TurboC集成開發(fā)環(huán)境的屏幕顯示如下:FileEditRunCompileProtectOptionsDebugBreak/WatchLine1 Col1InsertIndentTabFillUnident C:NONAME.CMessageFl-HelpF5-ZoomF6-SwitchF7-TraceF8-StepF9-MakeFlO-Menu圖1-13,TurboC的窗口TurboC的屏幕窗口分為如下幾部分:(1)主菜單區(qū)它在屏幕窗口的上方。包含8個菜單選項:File(文件),Edit(編輯),Run(運行),Compile(編譯),Project(項目),Options(選項),Debug(調試),Break/Switch(斷點/監(jiān)視),主菜單的選擇以ALT鍵加上菜單名的第一個字母來實現(xiàn),如:ALT+F即選擇File菜單。各個主菜單均有子菜單供用戶選擇來實現(xiàn)各種操作。(2)編輯窗口它在主菜單的下方,用于源程序的輸入。在其右上角可見當前編輯的文件的名字。(3)信息窗口它在編輯窗口的下方,用于顯示編譯和連接時的有關信息,用戶要注意其中顯示的錯誤提示信息,以幫助調試程序。(4)功能鍵區(qū)它在TurboC的屏幕窗口的底部,它提示功能鍵的作用。具體如下:FbHelp(幫助):按下F1,屏幕上顯示幫助信息。F5-Zoom(放大):將當前窗口放大或縮小。F6-Switch(轉換):按下此鍵可選擇編輯窗口或信息窗口為當前窗口,即在二者之間轉換。F7-Trace(跟蹤):用于跟蹤程序的運行情況。F8-Step(單步執(zhí)行):按一次F8鍵,執(zhí)行一條語句。F9-Make(生成目標文件):按下此鍵將一次完成當前編輯窗口里源文件的編譯和連接,生成.obj和?exe文件。F10-Menu(菜單):回到主菜單行并激活某ー個菜單項(如File此時File反相顯示),用戶可以使用“一”、“一”鍵來激活自己想要的菜單項,回車后顯示其子菜單。4、編輯、編譯、運行程序(1)編輯源文件編輯源文件是將已經(jīng)編寫的程序輸入到計算機中去并將其以某個文件名保存。注意:TurboC的源文件名的擴展名必須為.C。具體操作方法是:①編輯新文件單擊F6鍵,將光標置于編輯窗口后即可輸入文件容。編輯完成后注意應保存該文件,具體方法是:按下ALT+F鍵,屏幕上顯示File的子菜單,通過t或I鍵或者S鍵選擇SAVE選項后,屏幕上顯不: RenameNONAME C:\TC\NONAME圖1-2用戶可以指定磁盤路徑并將NONAME改為自己所要的文件名后回車,則當前編輯的源文件就按照該路徑以及名字保存于計算機中。如:鍵入C:\TC\MYFILEo②編輯已經(jīng)存在的文件按下ALT+F鍵,屏幕上顯示File的字菜單,通過t或I鍵或者L鍵選擇Load選項后,屏幕上顯示: LoadFileName *.C圖1-3用戶在此可輸入需要編輯的文件名或直接回車,若回車則屏幕上將顯示當前目錄下所有擴展名為.C的文件名,用戶可用"一''"t”“一”“I”鍵選擇需要編輯的文件,回車后屏幕上即顯示該文件的容供編輯。用戶在保存文件時有兩種選擇,ー是使用ALT+F調出File的子菜單后選擇SAVE,這時,當前編輯的文件被保存到當前的文件名下,二是使用ALT+F調出File的子菜單后選擇Writeto,這時,屏幕提示輸入新文件名,用戶可以輸入新文件名后回車,此時當前編輯文件將保存到新文件名下。用戶在保存文件時應特別注意屏幕上的提示信息,以免出現(xiàn)操作失誤。③快捷鍵的使用在編輯過程中除了可以使用如“Backspace"、“Del”等一般編輯鍵外還可以使用快捷鍵,提高編輯效率。用戶可以先將編輯窗口激活再按F1鍵,這時屏幕上顯示出各種快捷鍵的使用方法。例如:使用CTRL+Y快捷鍵可以刪除光標所在的一整行。使用CTRL+QF快捷鍵可以在當前編輯的源文件中查找某一字符串,方法是先按CTRL+Q,再按F鍵并輸入所要查找的字符串即可。使用CTRL+KB和CTRL+KK可以選定“塊”,用于復制、移動、刪除等操作。用戶應仔細閱讀有關快捷鍵的使用說明并熟悉其使用方法,這樣會大大提髙自己的編輯效率。(2)編譯源文件用戶在編輯好源文件后,可以對其進行編譯。對當前文件進行編譯只需按ALT+C然后選擇“CompiletoOBJ…”即可。編譯正常完成時,屏幕提示信息中會顯示“Success…”信息,如果有錯誤則顯示“Errors…用戶可以按任意鍵,屏幕上反相顯示的行是可能有錯誤的行,這時應注意信息窗口里的提示信息以幫助自己快速找出錯誤并進行修改。在進行修改時可配合使用F5、F6鍵以及“t|”鍵,以幫助對錯誤行的快速定位,提高修改速度。FileEditRunCompileProjectOptionsDebugBreak/WatchLine5Col2InsertIndentTableFillUnindent■CrMTFILE.C■ainOprintf(*Hello,World!);二MessageCompilingC:\tc\MYFILE.C ErrorC:\tc\MYFILE.C3:UnterminatedstringorcharacterconstantinfunctionmainErrorC:\tc\MYFILE.C3:Functioncallmissing)infunctionmainFl-HelpF5-ZoomF6-SwitchF7-TraceF8-StepF9-MakeFlO-Menu圖4編譯正常完成后,用戶將獲得一個名字于當前編輯文件一致,擴展名為.OBJ的目標文件。(3)連接程序當編譯正常結束后,就需對.OBJ文件進行連接以得到.EXE文件供執(zhí)行時使用。具體方法是使用ALT+C,然后選擇“LinkEXEfile”項,即對經(jīng)正常編譯后的.OBJ文件進行連接,若正常結束則得到ー個.EXE可執(zhí)行文件,若有錯誤則屏幕提示“Errors…..”,用戶可以按任意鍵,屏幕上信息窗口里顯示錯誤信息。(4)運行程序運行程序有多種方式:①在DOS平臺上運行由于通過編譯、連接后得到ー個可執(zhí)行的.EXE文件,那么在DOS環(huán)境的系統(tǒng)提示符下,只需鍵入該可執(zhí)行文件的路徑和名字回車后即可運行該程序。如:C:\TOmyfileZ②在TurboC集成開發(fā)環(huán)境中運行使用CTRL+F9、F10,ALT+R鍵都可達到運行程序的目的。使用F10和CTRL+R時,進入“Run”菜單后選擇“RunCTRL+F9”項回車后即可運行,而使用CTRL+F9則直接運行無需菜單操作。實際上用戶可能會發(fā)現(xiàn)菜單項中的快捷鍵提示如:在“RunCTRL+F9”項中看到的CTRL+F9就是其快捷鍵。用戶在使用的過程中應注意菜單項的快捷鍵并使用快捷鍵以達到簡化操作的目的。需要說明的是:在TurboC集成開發(fā)環(huán)境中運行程序實際上是將編譯、連接、運行這三個操作合為一體進行的。在這個過程中任意一個環(huán)節(jié)出錯,系統(tǒng)將給出錯誤信息供用戶參考并修改錯誤。③在WINDOWS平臺上運行進入包含經(jīng)編譯、連接后得到可執(zhí)行的.EXE文件的文件夾中用鼠標雙擊該文件圖標即可執(zhí)行該文件。(5)查看運行結果(用戶屏幕)當程序正常運行結束后,用戶可使用ALT+F5鍵顯示用戶屏幕查看運行結果。5、環(huán)境設置(1)改變用戶工作目錄所謂工作目錄是指用戶文件所在的目錄。一般情況下,用戶出于安全和管理上的需要愿意將自己的文件放置于自己的專用目錄中,那么,如何改變用戶在TurboC集成開發(fā)環(huán)境中的工作目錄呢?改變工作目錄后對用戶操作有什么影響呢?我們知道在DOS環(huán)境下,改變工作目錄是通過“CD”命令來實現(xiàn)的,而在TurboC集成開發(fā)環(huán)境中是使用菜單操作來實現(xiàn)。假定有C:\TC\USER目錄存在(如果不存在,用戶可以使用DOS命令建立該目錄),其中存放的是用戶文件,在TurboC卷竟下改變用戶工作目錄的方法是:鍵入ALT+F(或F10)后使用“一”“『,”一“J”或“C”鍵選擇“Changedir”項后屏幕提示如下: NewDirctory C:\TC圖1-5用戶可以在該窗口中輸入自己的工作目錄名即可,如: NewDirctory C:\TC\USER圖)-6這樣改變用戶工作目錄后,用戶在“LOAD”時,屏幕上顯示的都是當前用戶工作目錄里的文件,從而方便操作。(2)建立TurboC的工作環(huán)境在TurboC中,要對源程序進行編譯、連接、調試、運行,僅有源程序有時是不夠的,在這個過程中還有諸如包含文件和庫文件的存放位置、編譯模式、連接方法等等一系列環(huán)境因素需要預先設置,才能保證程序正常執(zhí)行。所謂建立工作環(huán)境,就是對這些因素進行設定,需要指出TurboC初次安裝后,其工作環(huán)境的缺省設置可以保證程序的正常運行,除非有特

殊要求,一般特別是初學者不要對其進行修改為好。另外,關于環(huán)境設置的容很多,這里只介紹常用的目錄設置的容,有興趣的讀者可參見有關資料。建立工作環(huán)境的操作如下:CompileLinkerEnvironmentDirectoryArgumentSaveRetrieveoption鍵入ALT+O(或F10)后,再使用“一”“t”“一”“|”或“〇”鍵選擇"Options”項,屏幕提示如圖7所示。選擇“Directory”項后,屏幕提示如圖8CompileLinkerEnvironmentDirectoryArgumentSaveRetrieveoptionIncludedirectories:C:\TC\lNCLUDELibrarydirectories:C:\TC\LIBOutputdirectories:TurboCdirectory:C:\TCPickfilename:Currentpickfile:圖!-7Option子菜單 圖1-8Directory子菜單建立“包含文件”的默認目錄在第一行中顯示的KIncludedirectoriesw表示當前“包含文件’’所在的目錄,用戶可以根據(jù)需要進行修改。修改的方法是:使用"t"或''I"鍵,選中該行后回車,屏幕提示如下: IncludeDirectoriesC:\TC\INCLUDE圖1-9用戶可對其中容進行修改。例如:可以改為C:\TC\INCLUDE;C:\TC\INCLUDE\USER,表示''包含文件”存放在兩個不同的目錄中,注意要用分隔。這樣修改后系統(tǒng)有兩條默認的“包含文件'’路徑。建立“庫文件”的默認目錄在第二行中顯示的"Librarydirectories"表示當前"庫文件”所在的目錄,用戶可以根據(jù)需要進行修改。修改的方法是:使用“t”或“I”鍵,選中該行后回車,屏幕提示如下: IncludeDirectoriesC:\TC\LIB圖1-10修改的方法同“包含文件”的修改方法相同。建立輸出文件的默認目錄在第三行中顯示的“Outputdirectories"表示當前用于存放輸出文件(*.obj文件和*.exe文件)的目錄,用戶可以根據(jù)需要進行修改。修改的方法是:使用“T”或“I”鍵,選中該行后回車,屏幕提示如下: OutputDirectories C:\TC圖1-11用戶可對其中容進行修改。例如:可以改為C:\TC\INCLUDE\USER,表示在編譯、連接過程中產(chǎn)生的所有?.obj文件和?.exe文件都存放在C:\TC\INCLUDE\USER目錄中。注意:此處不能給出兩個或多個路徑,否則出錯。TurboC的默認目錄在第四行中顯示的“TurboCdirectories"表示當前"包含文件’’所在的目錄,用戶可以根據(jù)需要進行修改。需要指出:由于它是TurboC系統(tǒng)文件所在的目錄,系統(tǒng)顯示的是安裝時的默認目錄,一般不修改它。(3)保存配置在完成上述設置以后,應將這些信息保存起來。操作方法是:回到“Options"菜單中,選擇“Saveoptions"項回車后,屏幕顯示: ConfigureFile C:\TC\TCCONFIGTC圖1-12其中的文件名是TC的配置文件名,所有的配置信息均保存在該文件中。每次啟動TC時,系統(tǒng)自動按照配置文件里的設置建立TC的工作環(huán)境。要將用戶設置信息保存到配置文件TCCONFIG.TC中,只需在出現(xiàn)圖12所示信息時,回車并確認即可。6、TurboC集成開發(fā)環(huán)境命令簡介(1)File菜單中子菜單名及含義如下:命令名含 義Load裝入一個已經(jīng)存在磁盤上的文件Pick將最近編輯過的8個磁盤文件名列表顯示,供用戶選擇New編輯新文件Save將當前編輯的文件以其現(xiàn)有的文件名存盤Writeto將當前編輯的文件以用戶指定的文件名存盤Directory顯示目錄及目錄中的文件供用戶選擇Changedir改變目錄OSshell暫時退出TC,回到DOS界面,鍵入EXIT可返回TCQuit退出TC集成開發(fā)環(huán)境,返回操作系統(tǒng)界面表!-1(2)Eidt菜單中,用戶可以按F1鍵顯示全部快捷鍵命令及含義,這里給出部分部分快捷鍵命令:命令名含義命令名CTRL+KB設置塊首PgDn向后翻頁,光標移到下ー屏CTRL+KK設置塊尾Home光標移到所在行首CTRL+KV塊移動End光標移到所在行尾CTRL+KC塊復制CTRL+KY塊刪除CTRL+T刪除光標所在位置的ー個詞CTRL+KR讀文件(塊插入)CTRL+Y刪除光標所在行CTRL+KW將塊寫入文件PgUp向前翻頁,光標移到上一屏CTRL+P塊打印表!-2Run菜單中子菜單名及含義如下:命令名含 義Run運行當前編輯窗口里的程序Programreset終止當前的調試,釋放程序所占存儲空間Gotocursor使程序運行到光標處停止Traceinto單步執(zhí)行程序,可跟蹤到函數(shù)內部的每一條語句Stepover單步執(zhí)行程序,但不跟蹤到函數(shù)內部Userscreen切換到用戶屏幕以查看輸出結果

Compile菜單中子菜單名及含義如下:命令名含 義CompiletoOBJ將當前窗口中的源程序編譯成OBJ文件MakeEXEfile將當前窗口中的修改過的源程序編譯并連接成EXE文件Buildall重新編譯Project中的文件,并生成EXE文件PrimaryCfile設置主文件名,設置后,編譯、運行均對該文件進行,當編譯出現(xiàn)錯誤時,自動將該程序裝入編輯窗口供修改(Option/Environment/MessageTracing為Allfile時)Getinto顯示當前路徑、文件名、文件大小、錯誤個數(shù)等信息天!-4Project菜單中子菜單名及含義如下:命令名含 義Projectname建立一個項目文件Breakmakeon選擇在何種類型錯誤停止MAKE編譯或連接前停止Autodependencies當置為ON時,編譯將檢查.C何.OBJ文件的日期是否更新,若已更新則重新編譯,為OFF時,不進行這種檢査Clearproject清除項目文件名Removemessage清除Message窗口中的信息表!-5Options菜單中子菜單名及含義如下:命令名含 義Complier設置存儲模式、硬件配置、調試技術、代碼優(yōu)化等參數(shù)Linker設置有關連接程序的選項Environment設置有關環(huán)境的選項Saveoption將有關編譯、連接的設貝信息保存到配置文件TCCONF1GTC中Retrieveoption裝入ー個配置文件并按此配置文件設置TC的編譯、連接等環(huán)境表!-6Debug菜單中子菜單名及含義如下:命令名含 義Evaluate在調試過程中,計算變量、表達式的值并顯示其值。用于檢查斷點處某些變量的值Callstack在調試過程中,用于檢查堆棧使用情況FindfuncHon顯示當前程序中某ー函數(shù)的定義。Refreshdislay當前編輯屏幕被重寫時,可用此選項重新恢復表!-7Break/watch菜單中子菜單名及含義如下:命令名含 義Addwatch插入一個監(jiān)視表達式,使在屏幕下方的監(jiān)視窗口顯示其值Deletewatch從監(jiān)視窗口中刪除當前監(jiān)視表達式Editwatch在監(jiān)視窗口中編輯監(jiān)視表達式Removeallwatch從監(jiān)視窗口中清除所有監(jiān)視表達式Togglebreakpoint對光標所在位置設置或清除斷點Clearallbreakpoints清除所有斷點Viewnextbreakpoint將光標移到下一斷點處,移動的順序按設置順序進行表!-8需要指出:在上述子菜單中,有很多還有子菜單,對于其中的選項這里沒有進行解釋,感興趣的讀者可以參看有關TurboC集成開發(fā)環(huán)境的資料。7、TurboC的命令行編譯方式TurboC的集成開發(fā)環(huán)境為用戶提供了一個非常有效的C語言程序的開發(fā)環(huán)境,但是在某些情況下我們不能使用它進行工作,例如:當采用C語言何其它髙級語言或匯編語言混合編程時,不能使用集成開發(fā)環(huán)境,但可以使用TurboC的命令行方式,對程序進行編譯,從而得到可執(zhí)行程序。這里作一個簡要介紹。TurboC的命令行編譯就是指在DOS狀態(tài)下,使用TurboC的編譯程序TCC.EXE對源程序進行編譯的方式,通過執(zhí)行TCC.EXE程序將用戶的源程序生成OBJ或EXE文件。TurboC的命令行方式的格式為:TCC[選項1選項2…選項n]文件名1文件名2…文件名n其中:(1)選項為編譯程序或連接程序的可選項。常用的可選項見表9,使用選項時必須在每個選項前冠以''并注意其大小寫的含義是不同的,各個選項間用空格分隔,文件名是同時進行編譯、連接的源文件名、中間代碼文件名或庫文件名。若省略擴展名,則按默認擴展名.C處理。(2)在沒有指出只編譯而不連接時,TCC將自動進行連接工作。例如:tcc-ms-eMyfile-Lc:\tc\lib-Ic:\tc\includeFilelFile2.objgraphics.lib命令含義是:編Filel.c并與File2.obj以及graphics,h連接生成小模式存儲的可執(zhí)行文件Myfile.exe?其中:-ms表示使用小模式存儲模式。-eMyfile表示連接后可執(zhí)行文件名為Myfile.exe,注意-e和Myfile間不空格。-Lc:\tc\lib表示庫文件的路徑,注意-L和Myfile間不空格。-Ic:\tc\include表示包含文件的路徑,注意T和Myfile間不空格。FilelFile2.objgraphics,lib表示源文件名為Filel.c,需要進行編譯處理得到Filel.obj后,再將其與File2.obj和graphics,lib進行連接得到可執(zhí)行文件。選項含 義選項含 義-C只編譯成,OBJ文件-Lxxx指定庫文件的路徑(XXX為路徑)-f使用浮點仿真-Ixxx指定包含文件的路徑(XXX為路徑)-B編譯帶有行內匯編的程序-nxxx指定輸出目錄(XXX為路徑)-S輸出ー個調用匯編模塊的格式-exxx指定執(zhí)行文件名(XXX為文件名)-ms使用小型存儲模式-w顯示所有警告錯誤-d合并重復串-wxxx顯示警告信息XXX-mt使用微型存儲模式-w-xxx不顯示警告錯誤XXX-180186/80286指令集-Dxxx定義宏-G按時間優(yōu)化-K缺省字符為無符號型-0優(yōu)化轉移指令-Uxxx取消宏定義-M產(chǎn)生連接映射-oxxx指定目標文件名(XXX為文件名)-r寄存器變量-pPasca!調用-y產(chǎn)生行號信息-zxxx設置段名-V源級調試-N堆棧溢出檢查-gN出現(xiàn)N個警告信息時,停止編譯-Z寄存器優(yōu)化-jN出現(xiàn)N個錯誤信息時,停止編譯-f878087浮點運算-mh使用巨型模式-iN最大標識符長度N-mm使用中型模式?U外部名下劃下劃線-me使用緊縮模式-ml使用大型模式-A禁止非ANS!擴展-Exxx選擇匯編器名-C允許注釋嵌套-a產(chǎn)生字對齊第2部分實驗實驗ーTurboC集成環(huán)境的熟悉與使用一、實驗目的1)了解實驗所用計算機系統(tǒng)以及啟動TurboC的方法。2)了解TurboC環(huán)境下編輯、編譯、連接、運行程序的基本方法。(3)通過對對示例程序的修改,進ー步了解C程序的特點。二、實驗容及步驟.查找計算機系統(tǒng)中是否已經(jīng)安裝TurobC系統(tǒng)。在WINDOWS環(huán)境下,通過桌面上開始/査找進入查找窗ロ,在''名稱"欄中輸入tc.exe,在“搜索欄”中選擇本地硬盤驅動器,再單擊“開始查找”按鈕,如果所用計算機系統(tǒng)中已經(jīng)安裝TurboC系統(tǒng),則會顯示已經(jīng)安裝的TurboC系統(tǒng)的路徑,如下圖所示:名稱!所在文件夾,大小1類型1修改時間tc.exec:\tc284KB應用程序88-8-292:00如果計算機系統(tǒng)中沒有安裝TurboC系統(tǒng),則搜索欄中沒有文件名和路徑名顯示。.啟動TurboC集成環(huán)境(1)從WINDOWS98環(huán)境中啟動雙擊查找窗口中,已經(jīng)找到的tc.exe文件名即可啟動TurboC?(2)從DOS環(huán)境中啟動通過桌面上開始/程序/MSDOS方式,進入DOS窗ロ,將tc.exe文件所在目錄設定為當前工作目錄(假定tc.exe所在文件夾為c:\tc)。具體方法是:在提示符后鍵入CDC:\TCZ,再鍵入TC/即可啟動TurboC集成環(huán)境。(3)在WINDOWS98中漢字環(huán)境下啟動在WINDOWS98中,查找pdos95.bat文件,找到后,選定該文件并單擊右鍵選擇“編輯”該文件,在該文件尾部增加一條命令:c:\windows\conunand.,存盤后,雙擊該文件名,則屏幕上顯示漢字狀態(tài)下的DOS窗口。將tc.exe文件所在目錄設定為當前工作目錄(假定tc.exe所在文件夾為c:\tc)?在提示符后鍵入CDC:\TC/,再鍵入TC/即可啟動TurboC集成環(huán)境。通過這種方式進入TurboC集成環(huán)境后,可以通過CTRL+空格或CTRL+SHIFT功能鍵選擇中/英文輸入方式,以達到在程序中使用漢字的目的。.熟悉TurboC集成環(huán)境(1)認識TurboC集成環(huán)境的各個窗口即編輯窗口(Edit)、信息窗口(Message),找出功能鍵區(qū)。(2)使用F5和F6功能鍵,觀察屏幕窗口發(fā)生什么變化,單擊F10鍵選擇主菜單行并與t、I、ー、ー、回車鍵等配合使用,可選擇子菜單,或者使用ALT+(主菜單項首字母)并配合使用t、I、ー、f、回車鍵,觀察菜單變化。(3)通過編輯ー個文件來熟悉編輯時常用的鍵,具體方法是:①通過選擇File菜單項建立新文件或打開已有的文件。選擇File的子菜單中的New可以進入建立新文件的編輯窗口,選擇File的子菜單中的Load可以打開已有的文件。②通過上述方式進入Edit窗口后,會發(fā)現(xiàn)光標在閃爍,這時就可以進行輸入,試著輸入下列程序:main()printf("Hello,C");)在輸入過程中,請有意地使用t、I、一、一、回車鍵、Del、Backspace、PageUp、PageDown等編輯鍵和下列組合編輯鍵:CTRL+Y的作用是刪除光標所在的行。CTRL+QF的作用是在當前編輯文件中查找字符串,按下CTRL鍵不放的同時按下Q鍵,這時編輯窗口的左上角會出現(xiàn)つ,再單擊F鍵,編輯窗口出現(xiàn)Find:提示,這時輸入需要查找的字符串后回車后出現(xiàn)Option時,再回車即可,如果找到,則光標停在該字符串上,如果沒有,則顯示紅色提示,按ESC鍵,返回編輯狀態(tài),需要注意的是:字符串查找是從當前光標所在位置開始向文件尾部查找,因此,要想從文件頭部開始查找,則須將光標移到文件頭部后再進行查找操作。CTRL+KB(定義塊首)、CTRL+KK(定義塊尾)、CTRL+KC(塊復制)、CTRL+KV(塊移動)、CTRL+Y(塊刪除)這些組合編輯鍵在處理多行程序時來得非常方便。例如:要進行多行復制,則可以進行下列操作:定義塊首:將光標移到上面程序中{的前面,按下CTRL鍵不放的同時按下K鍵后,單擊B鍵,即完成塊首的定義。定義塊尾:將光標移到上面程序中}的后面,按下CTRL鍵不放的同時按下K鍵后,單擊K鍵,即完成塊首的定義,這時所定義的塊呈反相顯示。再將光標移到ー空行上,分別按下CTRL+KC、CTRL+KV、CTRL+Y組合編輯鍵,觀察結果。③保存文件操作是通過File菜單中的Save或Write兩個子菜單來進行的。前者是將當前編輯的文件容保存到當前編輯的文件名下,后者是將當前編輯的文件容保存到新文件名下,操作時應注意提示信息,以免引起不必要的麻煩。(4)編譯、連接、運行程序是通過以下功能鍵或菜單選項來實現(xiàn)的。編譯:通過ALT+C或F10選擇Compile菜單,然后選擇CompiletoOBJ子菜單,回車即對當前文件進行編譯,請注意編譯后屏幕提示以確定當前程序中是否有錯誤,若有則使用F5和F6鍵來查找錯誤,通過F5將Edit窗口和Message窗口同時顯示出來,這時會發(fā)現(xiàn)兩個窗口中都有反相顯示,表明程序中有錯誤的行和該行所存在的錯誤性質。使用t、I光標移動鍵,可以將錯誤行逐行與其錯誤性質對應顯示,以便修改,編譯連接還可通過F9功能鍵來一次完成。連接:通過通過ALT+C或F10選擇Compile菜單,然后選擇LinkEXEfile子菜單,可以對經(jīng)編譯后并且沒有錯誤的OBJ文件進行連接,得到.exe文件。運行:通過ALT+R或F10選擇Run子菜單來達到運行目的,也可通過CTRL+F9來完成運行程序的操作。(5)檢查運行結果是通過ALT+F5功能鍵轉換TurboC集成環(huán)境和用戶屏幕的方式來實現(xiàn)的。若上述程序運行完畢,按下ALT+F5后在用戶屏幕上可以看到屏幕上顯示Hello,C。實驗ニ數(shù)據(jù)類型、運算符和表達式ー、實驗目的.掌握如何定義不同類型的變量以及變量賦初值的方法。.掌握不同類型數(shù)據(jù)間賦值規(guī)律并通過小程序來進行檢驗。.熟悉C語言表達式的書寫方式和表達式類型的變化規(guī)律。二、實驗容即步驟.輸入下面的程序main(){printf(^H);printf(aIlikeyou”);}運行后檢查結果。再將其中的printf(uHello,C);改為printf(aHello,C\n,>);并加注釋行/*commentline*/運行并檢查結果。比較兩次運行的結果有什么不同并觀察第二次運行后結果中是否有注釋行的容。分析原因。.運行下面的程序main()(charc二'a';printf("Hello,c");printf("%c\n",c);printf("%d'n",c);}檢查運行結果,分析為什么后面兩行輸出的變量名ー樣而輸出結果不ー樣。進ー步,將%d改為%x、%〇,再運行程序比較結果并分析原因。.運行下面的程序main()(chari=-1;intp;P=123;p=i;printf("Hello,c”);printf("p=%u\n,',p);}變量P的輸出結果為65535,分析為什么不是123或ー1。再將p=123;和p=i;改為p=0oxff61;和i=p;,將printf("p=%u\n",p);改為printf("p=%c\n,',i);,運行并分析結果。.運行下面的程序main(){chari=-1;intp;i?二-3;p=10*(i+2)/255;printf(wp=%d\n",p);printf("Hello,c");}先分析程序并判斷輸出結果,再運行程序檢查結果是否與判斷的結果相同,若不同試分析原因。.運行下面的程序main()(intp;P=l;p++;printf("p=%d\n”,p);printf("p=%d\nM,p,p++);}先分析程序并判斷輸出結果,再運行程序檢查結果是否與判斷的結果相同,若不同試分析原因。.運行下面的程序main()(intp,q=2;p=l,(q+2);printf("Hello,c");printf("p=%d\nw,p);}先分析程序并判斷輸出結果,再運行程序檢查結果是否與判斷的結果相同,若不同試分析原因。再將p=l,(q+2);改為p=(l,(q+2)),再運行后分析結果。.運行下面的程序main()(chari=;i?=l;printf("i=%c\nw,i);}先分析程序并判斷輸出結果,再運行程序檢查結果是否與判斷的結果相同,若不同試分析原因。.運行下面的程序main()(inti=Oxfbl2,p=Oxf;i=iApprintf("i=%d\nw,i);)先分析程序并判斷輸出結果,再運行程序檢查結果是否與判斷的結果相同,若不同試分析原因。.運行下面的程序main()(chari=-3;intp;P=(int)(i+1);printf(Mp=%d%u\n”,i.p);}先分析程序并判斷輸出結果,再運行程序檢查結果是否與判斷的結果相同,若不同試分析原因。.運行下面的程序main()(intp;p=sizeof(“\"3\\\n\'");printf("p=%d\n”,p);}先分析程序并判斷輸出結果,再運行程序檢查結果是否與判斷的結果相同,若不同試分析原因。實驗三順序程序設計一.實驗目的:.掌握賦值語句的使用。.掌握數(shù)據(jù)的輸入輸出方法,能正確使用各種格式轉換符。二.實驗容及步驟:行下面的程序,分析輸出結果。(l)mainO{inti=45;printf("\n(l)i=%d,%u,%ldw,i,i,i);printf(M\n(2)i=%+8dI%2dI%-8dI%08d丨”,i,i,i);)將i的值改成一45,重新運行。main(){unsignedk=200;printf("\n(l)k=%d,%u,%ld",k,k,k);printf("\n(2)k=I%+10u|%-10o|%10x|",k,k,k);)將k的值改成50000,重新運行。main(){longa=178L;printf("\n(l)a=%ld,(0)%lo,(Ox)%lx",a,a,a);printf("\n(2)a=%81d|(0)%-81ol(0x)%081x|",a,a,a);main(){floatx=12.374;printf(w\n(1)x=%f,%e,%g",x,x,x);printf(w\n(2)x=%12fI%12.2f1%.Of|w,x,x,x);)將x的值改成6.72e-7,并將第二條輸出語句改為printf(w\n(2)x=|%12eI%12.2e,%.le|r\y,y,y);然后重新運行。main(){charch=,Er;intm=65;printf(w\n(l)chl=%c,%d",ch,chi);printf("\n(2)m=%d,%cr\m,n);)將m的值依次改成180、400,然后重新運行。(5)main(){printf("\n%s","abcdefg");}將%s依次改成%-10s、%10.2s、%.4s,然后重新運行。.輸入以下程序:main(){intm;floatx;printfCr\n請輸入數(shù)據(jù):り;scanf("%d%f",&m,&x);printf(’へnm=%d,x=%ff,);)(1)運行程序,輸入10/2〇/或者輸入10ロ2〇/ 或者輸入10.0/20.〇/(2)將輸入語句改為scanf("%3d%4f",&m,&x);,運行程序輸入1ロ345.7/或者輸入口234567/觀察輸出結果,并分析原因。.輸入以下程序:main(){inti;charcl,c2,c3;scanf(唄c",&cl);scanf("祝",&c2);scanf("%c",&c3);printf("%c",cl);printf("%c",c2);printf("%c",cl);)(1)運行程序,輸入abc/(2)運行程序,輸入a/b/c/(3)在每個scanf語句后面加上語句:getchar();運行程序,輸入a/b/c/(4)在源程序的基礎上,將scanf語句的%c前面加一空格,即改為:scanf("□%c",...);運行程序,輸入口a/ロb/ロc/或輸入口aロbロc/觀察程序的執(zhí)行結果,并分析原因。.編制ー程序,用getchar函數(shù)輸入字符,然后用putchar函數(shù)輸出字符,同時要求輸出字符的ASCI!碼。分別考慮用int和char型變量來接收鍵盤輸入的字符,分析兩者是否等價?.輸入x的值,據(jù)下面的多項表達式求y的值:y=1x0+12x'—7.3x'ー寺x~+2x—4實驗四選擇結構程序設計一、實驗目的.學會使用關系表達式及邏輯表達式。.學會使用條件表達式。.熟練地運用if語句的不同格式編寫程序。.掌握switch語句的編程方法。.學會使用if-got。實現(xiàn)循環(huán)。.掌握求和、求積的算法。二、實驗容及步驟1.下面是ー個計算分段函數(shù)的程序,對x的各種取值進行運算后,找出程序中的錯誤并改正。r!當x>0時y=[o 當x=0時-1 當x<0時程序如下:main(){floatX;inty;scanf("%f",&x);if(x<0)y=-l;if(x=0)y=0;elsey=l;printf("x=%f,y=%d\n",x,y);}.從鍵盤上輸入三個數(shù),用條件表達式編程找出最大數(shù)和最小數(shù)。.分別利用if語句的不同格式和switch語句編程,計算下面的分段函數(shù)。p4x-8 (-lWxVO)y-{3x2+10x-1 (OWxVl)8x3-3x2+2x-1 (1くx<2).水果店有蘋果,ー級5.50元/kg,二級4.20元/kg,三級3.00元/kg,四級2.50/kg,輸入蘋果的等級、數(shù)量以及顧客的付款數(shù),顯示出蘋果的等級、數(shù)量、應付款數(shù)以及找給顧客的錢數(shù)。.編寫一個求二次方程ax?+bx+c=0根的程序。要求考慮以下幾種情況:a=0不是二次方程的根。b-4ac=0有兩相等的實根。b-4ac>0有兩個不相等的實根。b2-4ac=0有兩個不相等的共輔復根。一次輸入5組數(shù)據(jù),輸出5個方程的根。實驗五循環(huán)結構程序設計ー、實驗目的.熟練地運用whileヽdo-while,for語句實現(xiàn)循環(huán)結構的編程方法。.通過實驗進ー步了解三種實現(xiàn)循環(huán)語句之間的異同點。.掌握求最大數(shù)、最小數(shù)、遞推、迭代以及枚舉等算法。二、實驗容及步驟.下面是求デ+グ+……+100P的程序main(){inti,sum;for(i=l;i<101;i++){i*=i;sum+=i;)printf("sum=%d\n",sum);}(1)運行程序觀察結果,若有錯則改正。(2)用while循環(huán)結構編此程序。.任意ー個一位數(shù)每次加7,消去十位數(shù)可得十個不同得數(shù)字,編程序顯示這10個不同得數(shù)字。3,求え=ZZ【(i+l)2("2)].若口袋里有12個球,其中3個紅球,3個白球,6個黑球,從中任取8個球,有多少不同得取法。.“百馬百瓦問題有100匹馬馱100塊瓦,大馬馱3塊,小馬馱2塊,兩個馬駒馱1塊,求大馬、小馬、馬駒各有多少。.用循環(huán)語句編程序,顯示下列圖案*****實驗六數(shù)組ー、實驗目的.掌握數(shù)組的定義和數(shù)組元素的引用。.掌握數(shù)值型數(shù)組的賦初值、輸入和輸出。.掌握字符型數(shù)組的賦初值以及字符串的輸入和輸出。.掌握常用字符串函數(shù)的應用。.掌握比較、選擇和冒泡等排序方法。二、實瞼容及步驟.下面程序是統(tǒng)計20個整數(shù)中非負整數(shù)的個數(shù)以及計算非負整數(shù)之和,請將程序補充完整。^include<stdio.h>main(){inti,s,count,;s=count=0;for(i=0;i<20;i++)scanf("%d",);for(i=0;i<20;i++){if(a[i]<0)s+=a[i];count++;}printf("s=%d\tcount=%d\n",s,count);}.從鍵盤上任意輸入一個字符串,顯示出其長度。(不得使用strlen函數(shù)).輸入m*n個數(shù)(m、n均小于20),組成m行n列的數(shù)組,求出其中最大的元素,并輸出它在數(shù)組中的位置..若一個從小到大排列的序列中有10個數(shù),現(xiàn)要插入5個數(shù),使插入后的序列仍保持升序排列。.有10名運動員參加400米跑的編號和成績如下:編號T404T356T804T424T570T723T729T413T586T519成績44.644.244.543.744.744.945.145.744.845.3編寫程序,按成績從優(yōu)到劣的次序輸出編號和成績。實驗七函數(shù)ー、實驗目的.掌握函數(shù)的定義方法。.掌握通過實參和形參在函數(shù)間進行“值傳送’’的編程方法。.掌握函數(shù)嵌套調用和函數(shù)的遞歸調用。.掌握全局變量和局部變量、動態(tài)變量和靜態(tài)變量的定義和使用方法,以及編程時的差別。.了解宏定義、帶參宏和文件包含處理的方法。二、實驗容及步驟.下面是判斷ー個數(shù)是否是素數(shù)的程序,若是顯示“yes",若不是則顯示“no”,請補充完整并上機驗證。main(){intx;scanf("%d",);if(prime(x))else;}prime(inta){inte,i=2,y=l;e=a/2;while((i<=e))if(a%==0)y=0;elsei++;.有鍵盤輸入a,b,c的值,寫ー函數(shù)計算:1+。 1+ 1+Cヽ2ゝy= 4———r+( r)1\-a+a2l-b2+b4l-c+c2.計算下面的級數(shù),XX3X5X1 x4"~'x4n+lsinx- 1 卜 1 1 3! 5! 7! (4/?-1)!(4〃+1)!(1)用遞推方式寫出求ズ和n!的函數(shù),采用嵌套調用函數(shù)的方法編程。(2)用遞歸方法寫出求xn和n!的函數(shù),編程計算。.編寫ー函數(shù),統(tǒng)計字符串中字母、數(shù)字、空格和其它字符的個數(shù),在主函數(shù)中輸入字符串以及輸出統(tǒng)計結果。實驗ハ指針ー、實驗目的.正確地定義和使用指針變量。.掌握數(shù)組的指針以及指向數(shù)組的指針變量的應用。.正確使用字符串的指針以及指向字符串的指針變量的應用。4I掌握指針數(shù)組的應用。.掌握函數(shù)指針的使用方法。二、實驗容及步驟.觀察下面程序的執(zhí)行結果main(){inti,j,*p[4],a[12]={l,2,3,4,5,6,7,8,9,10,ll,12};p[0]=&a[0];p[l]=&a[3];p[2]=&a[6];p[3]=&a[9];for(i=0;i<4;i++){for(j=0;j<3;j++)printf(tt%4dM,p[i][j]);printf(w\nM);)}ロ.下面是刪除字符串中相同字符(相同字符僅保留一個)的程序,將程序補充完整。??include<stdio.h>^include<string.h>main(){charstr[80],*p=str;inti,j,k,n;n=strlen(str);for(i=0;i<n-l;i++)for(j=;j<n;j++)

if(*(p+i)=*(p+j)){for(k=j;k<n-l;k++)*(p+k)=;n=;J;)str[n]=;puts(str);}ロ.用指針編程,寫一個字符串復制的程序(不能使用strcpy函數(shù))。.寫一個用矩形法求定積分的通用函數(shù),分別求:Jsinxdx.[cosxdx,[e'dx0 J-l Jo5.已知10個學生的學號,5門課程的成績,編程序完成:(1)計算每個學生的總分和平均分。(2)計算每門課程的平均分。(3)按平均分從小到大排序后顯示成績單。(成績單包括學號、5門課程的成績、總分和平均分)實驗九結構體和共用體一.實驗目的:.熟練掌握結構體類型及變量的定義和使用;.掌握結構體類型數(shù)組、結構體類型指針的概念和應用;.掌握鏈表的概念,初步學會對鏈表進行操作;4,掌握共用體的概念,及共用體變量的使用方式。二.實驗容及步驟:編寫完整的程序,然后調試通過。.利用結構體編寫程序,求任意兩復數(shù)的和。.輸入10個數(shù)據(jù),將它們按從大到小的順序輸出,并給出每個數(shù)據(jù)所對應的原來輸入次序。(1)用結構體數(shù)組實現(xiàn)。(2)在(1)的基礎上,利用指針輸出其結構體數(shù)組。(3)用動態(tài)鏈表實現(xiàn)。要求邊讀入數(shù)據(jù),邊建立數(shù)據(jù)有序鏈表。要求編寫插入結點的函數(shù),在建立鏈表時調用它(4)在(3)的基礎上,刪除最小、最大數(shù)據(jù)所在結點。要求編寫刪除結點的函數(shù)。.輸入和運行以下程序,并分析輸出結果。#include<stdio.h>struncA{intm;floatx;charch[8];);unionB{intm;floatx;charch[8];}date;main(){inti;printf(a\nA:%d99,sizeof(structA));printf("\nB:%d”,sizeof(structA));printf("\n請輸入4個字符:");for(i=0;i<4;i++)scanf(u%cn,&date.ch[i]);printf(a\nm:%d”,date,m);printf("\nx:%f",date.x);)實驗十文件一?目的要求:.掌握文件、文件指針的概念;.學會使用文件打開、關閉、讀、寫等文件操作函數(shù);二.實驗容.文件的建立、修改,每次運行后查看文件容。(1)從鍵盤輸入一行字符存入文件filel中。(2)將filel中數(shù)據(jù)排序后重新放入文件filel中。(3)將一從鍵盤輸入的字符插入到文件filel中。.建立存放角度為〇。?360。(每隔1。)的正弦函數(shù)值的文件;然后通過查找文件,求出角度x(整型)的正弦函數(shù)值。(1)要求以文本文件存放,兩列形式。第一列為角度值,第二列為對應的正弦函數(shù)值。(2)要求以二進制文件存放。.利用fputc函數(shù)寫ー函數(shù)myputw(w,fp)將整數(shù)w寫入fp所指文件中;利用fgetc函數(shù)寫ー函數(shù)mygetw(fp)從fp所所指文件中讀出一整數(shù)。然后編程利用myputw。將一整數(shù)寫入文件中,再用mygetw()從文件中讀出。第三部分教材習題解答第1章C語言程序設計基礎知識習題ー、單選題.一個二進制數(shù)位也稱為ー個()〇A.bitB.byteC.KBD.wordTOC\o"1-5"\h\z.存儲容量!KB等于( ).A.2[字節(jié)B.2,°字節(jié)C.2B字節(jié)D.2。°字節(jié).存中每個基本單元都有唯一的序號,這個序號稱為()〇A,地址B,字節(jié)C.代碼D,字.與十進制39等值的二進制數(shù)是( )〇A.00100111B.01001001C.10100111D.01011000.下面數(shù)據(jù)中最大數(shù)是()〇A.(1010001.101)2B.(121.3)8C.(97.6)10D.(51.5)16.以十六個二進制位表示ー123,其補碼是( )〇A.(IOIOD2B.(177606),C.(ff86),6D.(FF85)16.(FFFF)m是一個數(shù)的補碼表示,該數(shù)的值是( )?A.-1B.32767C.-32767D.65536.(11111110)樸和(00000001)ネ相加后,其結果所表示的十進制數(shù)是()〇A.-1B.1C.0D.255.計算機對編譯型高級語言的執(zhí)行方式是()〇A.逐條語句邊解釋邊執(zhí)行,即解釋一條就執(zhí)行一條。B.將整個程序編譯完成后再執(zhí)行,不生成目標程序。C.將源程序編譯成目標程序,生成并保留目標程序,連接后執(zhí)行。D.將源程序解釋完畢后再執(zhí)行。.計算機對解釋型高級語言的執(zhí)行方式是( )。A.逐條語句邊解釋邊執(zhí)行,即解釋一條就執(zhí)行一條。B.將整個程序編譯完成后再執(zhí)行,不生成目標程序。C.將源程序編譯成目標程序,生成并保留目標程序然后執(zhí)行。D.將源程序解釋完畢后再執(zhí)行。二、填空題.用高級語言編寫的程序要變成目標程序,必須經(jīng)過( )程序處理。.負整數(shù)在計算機中通常是以( )碼形式存儲的。.在計算機中,應用最普遍的字符編碼是( )編碼。.在計算機中,常用( )個二進制數(shù)位表示一個字符。.現(xiàn)有二進制數(shù)(11111111”,若它是ー個十進制數(shù)的原碼,則該十進制數(shù)是(6,現(xiàn)有二進制數(shù)(11111111)2,若它是ー個十進制數(shù)的補碼,則該十進制數(shù)是(.現(xiàn)有二進制數(shù)(01111010)2,若它是ー個字符,則該字符是( ).國標漢字編碼規(guī)定用連續(xù)的( )個二進制位來表示ー個漢字.在連續(xù)的八位二進制位中,用補碼表示法表示數(shù)據(jù),其表示圍是( ).TurboC中規(guī)定標識符的長度不超過( )字符。三、簡答題.簡述機器語言、匯編語言和高級語言各自的特點。.簡述ー個算法的基本特點。.簡述結構劃程序設計三種基本結構的共同特點。.簡述C語言的基本結構。.簡述在C語言中定義用戶標識符的規(guī)則和應注意的事項。附加題ー、單選題.下面哪種設備是輸出設備( )A.掃描儀B.鍵盤C.鼠標D.顯示器.微機中的主存儲器一般由( )組成。A.CD-ROM和RAMB.硬盤和RAMC.ROM和RAMD.硬盤和CD_ROMDOS是()的操作系統(tǒng)。A.?單用戶、單任務B.單用戶、多任務C..多用戶、單任務D,多用戶、多任務4.Windows是( )的操作系統(tǒng)。A.?單用戶、單任務B.單用戶、多任務C.?多用戶、單任務D,多用戶、多任務5,熱啟動就是同時按下( )鍵。A.Ctrl+Alt+DelB.Shift+Alt+DelC.Ctrl+Alt+InsD.Shift+Alt+Ins

TOC\o"1-5"\h\z.通常3.5英寸的軟盤其容量為( )A.360KBB.720KBC.1.2MBD.1.44MB.計算機對下列幾種存儲器中,訪問速度最快的是( )A.存儲器B.CD-ROMC.軟盤D.硬盤.斷電后會使存儲器失去信息的是( )A.RAMB.CD-ROMC.ROMD.硬盤.ー個完整的計算機系統(tǒng)應包括(B.主機和操作系統(tǒng)D.硬件系統(tǒng)和軟件系統(tǒng)B.主機和操作系統(tǒng)D.硬件系統(tǒng)和軟件系統(tǒng)B.在ROM中固有的命令D,在磁盤上的特定文件C.硬件系統(tǒng)和系統(tǒng)軟件.DOS的部命令是( )A.在CPU中固有的命令C.包含在中的命令二、填空題.DOS操作系統(tǒng)的部命令都包含在( )文件中。.DOS對磁盤文件的管理是釆用( )結構的目錄。TOC\o"1-5"\h\z.要使二級及二級以下目錄回到其上一級目錄,通常使用的DOS命令是( ).寫出將當前路徑下名為MY.TXT的文件更名為MY.C的操作命令C:\>( ).若當前盤為C,寫出按頁顯示A盤根目錄TC子目錄下擴展名為C的操作命令C:\>( ).若當前盤為C,在C盤根目錄DOS子目錄下帶有常用的外部命令,寫出對A盤格式化并傳送系統(tǒng)的操作命令C:\>( ).漢字編碼一般是用( )個字節(jié)表示一個漢字。.二進制加法計算:1110.01+110.101=( ).ー個完整的文件標識符應由[盤符]、( )、[文件名]、[擴展名]組成。.若存的地址從十六進制0000到十六進制FFFF,則該機存的容量為( )KB.三、簡答題.馮。若依曼提出的計算機體系結構的設計思想是什么?.簡述計算機系統(tǒng)的組成。.計算機存儲器分為哪兩大類?指出它們之間的異同點。.簡述一般操作系統(tǒng)的作用和功能?.簡述MS-DOS的部命令和外部命令。習題答案1.A2.B3.A4.A5.C6.D7.A8.A9.C10.A1.編譯2.ネト碼3.ASCII4.85.2556.-17.z8.169.-128至リ12710.32三、略附加題答案LD2.C3.A4.B5.A6.D7.A8.A9.D10.-—ヽCOMMAND.COM樹型或層次型CD..RENMY.TXTMY.CDIRA:\TC\*.C/PDOS\FORMATA:/S或、DOS'FORMATA:/S或C:\DOS\FORMATA:/S2 8.10100.Ill9.路徑10.64三、略第2章基本數(shù)據(jù)類型及其運算習題ー、單選題TOC\o"1-5"\h\z.在有字符型、整型、實型常數(shù)的表達式運算中,其最后結果的類型是( )A.Char型B.long型C.float型D.double型.字符串"Iamstudent"在存中占用的字節(jié)數(shù)是( )A.12個B.13個C.14個D.15個.TurboC2.0中,若定義unsignedlongb,則變量b在存中分配的字節(jié)數(shù)是( )A.1個B.2個C.4個D.8個.下面表達式結果為3的是( )A.(-7)%4B.(-7.0)%4.0C.7%(-4)D.7.0%4.0.若有inta,b;下面正確的表達式是( )A.7.0%3.0B.(a+b)++C.7++D.a+'a'.設有inta=4,b=-7;表達式(int)(a+b)/2.0+a/b的值是( )A.4B.-7C.-1D.-1.5.設有inta=2,表達式(a<く=2/a)?l的值是( )A.1B.2C.4D.8.設有inta=3,a+=a-=a*a的值是(

A.18B.9C.-12D.39.設有inta=3,b=-4,c=5;表達式a++-c+(++b)的值是( )A.18B.9C.-12D.39.設有inta=3,b=-4,c=5;表達式a++-c+(++b)的值是( )A.-7B.-5C.-4D.-310.運算符++、*、>>、二、,、sizeof的優(yōu)先級由高到低排序值是(++、?、>>、二、,、sizeof?、++、>>、二、,、sizeof++、*、sizeof、=、,、?sizeof、++、?、>>、二、,二、填空題.C語言的標識符必須以( )開頭。.字符常量是由( )括起來的字符。.C語言中“轉義字符’'是以符號( )開頭。.字符變量中存放的是字符所對應的( )編碼值。.在定義變量的同時給變量賦予初值,稱為變量的( ).字符串"ab\\\\x66”的長度是()〇.代數(shù)表達式、加60。+1)型空士!V COSX的C語言算術表達式是( )〇TOC\o"1-5"\h\z.代數(shù)表達式h--6I的c語言算術表達式是( )〇e1+e-x.代數(shù)表達式—y—的C語言算術表達式是( )..代數(shù)表達式c?r+bg27的C語言算術表達式是( ),三、簡答題.下列那些是C語言中的合法常量。1.0e0.501 018 1.0e0.5“123”'\ffl'.下列那些是C語言中的合法標識符。9xy_year_123ABCnepiintint_file,c.簡述在C語言中字符與字符串的區(qū)別。.在C語言中為什么變量要“先定義,后使用”。.簡述C語言中各種類型數(shù)據(jù)間運算的類型轉換規(guī)則是什么?附加題ー、單選題.下面轉義字符中,表示字符串結束的是(A.\0B.\nC.\rD.\f.下面幾種運算符中,優(yōu)先級最低的是(A.||B.,C.=D.?:TOC\o"1-5"\h\z.設有inta=3,b=-4,c=5;表達式a=b=c=6+3/5的值是( )A.3B.4C.6D.6.6.設有inta=3,b=-4,c=5;表達式(a+b,b*c,a+=b+4)的值是( )A.-1B.-20C.0D.3.設有inta=3;表達式a=a*=a*=a的值是( )A.3B.9C.81D.162.設有inta=3,b=-4,c=5;表達式b%=a+b+cT/10的值是( )A.7.5B.0.5C.4D.-4.設有inta=3;表達式a%=a+=(a*=a)/3的值是( )A.0B.3C.9D.12.TurboC2.0中,unsingned型數(shù)的取值國是( )A.-2,5s(215-1) B.-2”s(23|-1)C.0s(216-1) D.0s(2め-1).退出TurboC2.0返回系統(tǒng),在主菜單File項中可選擇( )A.LoadB.NewC.SaveD.Quit.在TurboC2.0中,在主菜單File項中選擇OsShell后,要重新回到TurboC2.0,應使用命令( )A.ReturnB.ExitC.QuitD.Nwe二、填空題.表達式!0%3的結果是( )?.C語言中大小寫字母被認為是( )的字符。.對符號常量進行定義的命令是( )〇."x"在存儲時占用( )個字節(jié)。.實型數(shù)據(jù)與整型數(shù)據(jù)進行算術運算,其結果是( )型。.ハ進制整型常量必須以( )開頭。.整型常量后加U,則表示該數(shù)為( )整型常量。.將一個unsignedchar型變量賦值給long型變量時,long型變量的高位要充( )。.“一”作為單目運算符時比它作為雙目運算符時的優(yōu)先級別( )。.整型變量a的值為1,語句a?l;執(zhí)行后,變量a的值為( )?三、簡答題.簡述定義變量時要注意的事項。.簡述TurboC中符號擴展的規(guī)則。.簡述本章中所學到的各種數(shù)據(jù)類型及其長度、格式、取值圍。習題答案ー、單選題l.D2.B3.C4.C5.D6.D7.B8.-12 9.B10.B二、填空題1.字母或下劃線2.單引號或''3.\4.ASCII5.初始化6.5sqrt((sin(30*3.14/180)+l)*(sin(30*3.14/180)+1)/cos(30*3.14/180));fabs(l-pow(x,3.6));(exp(l.2)+exp(-1.2))/2.0;cos(30*3.14/180)/sin(30*3.14/180)+log(7)/log(2);三、簡答題01、、0xff21,'\ff',-O.e5、"123"year、123、ABC、e,pi、int_3,字符是用單引號括起來的一個字符,其長度為1,而字符串是用雙引號括起來的多個字符且在其尾部有一個空字符‘、〇’,其長度為字符個數(shù)加1。4.因為在C語言中,定義變量即通知系統(tǒng)按變量的類型分配ー個單元,并建立意義對應的關系,以后程序中引用該變量名即引用該變量對應單元的容。如果ー個變量沒有定義而被引用,由于系統(tǒng)沒有為該變量分配存單元,故對其引用是無意義的。所以要“先定義,后使用‘’。5,相同類型數(shù)據(jù)間的運算,其結果的類型不變。不同類型數(shù)據(jù)間的運算,其結果類型變化如圖2-11所示。附加題解答ー、單選題1.A2.B3.C4.D5.C6.A7.A8.C9.D10.B二、填空題1.12.不同3.?define4.25.double6.07.元符號8.09.高10.2三、簡答題略第3章順序結構程序設計習題ー、單選題1.下面選項中 不是語句。A,;B.x=a+b/c;C.a=5,b=4,c=a+b;D.printf(,r\nthisisasentence!")2.可用格式說明%d輸出ー個 數(shù)據(jù)。A.int型C.值為50000的unsigned型B.long型D.float型3.對于int型非負數(shù)據(jù)不可釆用格式說明符 輸出。A.%xC.%ldB.%dD.%u4.若有char型變量ch=,球,則下面的輸出語句在編譯或運行中會產(chǎn)生錯誤。A.printf(,r\n%d\ch);C.printf("\n%c",ch);B.putchar(ch);D.printf("\n%e",ch);二、填空題.在C語言中沒有專門的輸入輸出語句,程序中的數(shù)據(jù)的輸入輸出都是通過來完成的。.C語言中最簡單的語句為〇.C語言程序中,只有函數(shù)和函數(shù)可以不加任何說明直接使用。.若有賦值語句x=x+3;,則其含義為〇三、閱讀題.若下面程序運行時輸入為:001245.78392,試寫出運行結果。main(){inta;floatx;charch;scanf("%4d%5f%2c”,&a,x,ch);printf("\naメd\nx=%f\nch二%c",a,x,ch);}.執(zhí)行下面的程序時,為使變量m=12,n=9,x=9.34,y=17.2,cl=E,c2=G,請寫出正確的輸入方式。main()(intm,n;floatx,y;charcl,c2;scanf("m二%d,n二%d",&m,&n);scanf("%f%f",&x,&y);scanf("%c,%c”,&cl,&c2);printf(w\nm=%d,n=%d\nx=%f,y=%e\ncl=%c,c2=%cw,m,n,x,y,cl,c2);).試寫出下面程序的運行結果。main(){intm=10;unsignedu二42315;longk=600000;floatx二34.5;doubley=76.1;chara二’〇',b二'a',c二’A';printf("\nintm=%d,%-10d,%6o",m,m,m);printf("\nunsignedu=%u,%10d,%x",u,u,u);printf("\nlongk=%31d,%15d",k,k);printf("\nfloatx=%f,%e,%g",x,x,x);printf("\ndoubley=%10.3f,%4.le",y,y);printf("\nchara=\'%c\',b=%-5c,c=%d",a,b,c);printf("\n%s,%-7s,%9.3s","string","abed","1234567890");.試寫出下面程序的運行結果。

main(){inta=4,b=9,c;printf(K\na=%-8db=%-8dH,a,b);c=a;a=b;b=c;printf(w\na=%-8db=%-8dw,a,b);}四、編程題.已知三角形的兩條邊a、b及其夾角a,求第三邊c及其面積s。.輸入x的值,據(jù)下面的多項表達式求y的值:y=jx0+12x4—7.3x'—fx^+2x—4.輸入一個三位正整數(shù),然后逆序輸出。如輸入為123,則輸出為321。.編寫程序,用1分、2分、5分的硬幣湊成300元以下的錢數(shù),要求硬幣的數(shù)目最少。附加題一.單選題.利用scanf函數(shù)輸入整型時,鍵入的容應是相同類型的0A.常數(shù) B.常量表達式C.變量 D.含變量的表達式.若有scanf(嘅d",&ch);現(xiàn)在想將字符A輸入給字符變量ch。輸入數(shù)據(jù)時,鍵入的容是,オ不會導致讀入錯誤。A.A B.65C.\101 D.\041.若有charch;利用getchar(ch);語句將字符‘A"輸入給變量ch,則輸入方式是正確的。A.AZ B.65/C.\041Z D.\101Z4.若有intm;doublex;利用scanf("%d%lf",&m,&x);語句,則輸入方式是正確的。A.10,20Z B.1020.0ZC.10.020Z D.10.020.00Z5.是C語言中的正確的賦值語句。A.i++; B.x=4,y=l;C.x=4*y=2; D.x=floatm;6,若變量已正確說明為float類型,要通過語句scanf("%f%f%f 給a賦于10.0,b賦予20.0,c賦予30.0,不正確的輸入形式是〇A.10Z B.10.0,20.0,30.0Z20Z30ZD.1020D.1020Z30Z20.030.0Z.若有以下定義和語句:intu=Fv=0xl0,w=10;printf("%d,%d,%d\n",u,v,w);則輸出結果是〇A.8,16,10 B.10,10,10C.8,8,10 D.8,10,10.若有以下定義和語句charcl二'b',c2='e';printf("%d,%c\n",c2"cl,c2+'a'-A);則輸出結果是〇A.2,M B.3,EC.2,E D,輸出項與對應的格式控制不一致,輸出結果不確定.若有定義:intx,y;chara,b,c;并有以下輸入數(shù)據(jù):2ABC則能給x賦整數(shù)1,給y賦整數(shù)2,給a賦字符給b賦字符B,給c賦字符C的正確程序段是〇scanf("x=%dy%d",&x,&y);a=getchar();b=getchar();c=getchar();scanf("%d%d",&x,&y);a=getchar();b=getchar();c=getchar();scanf("%d%d%c%c%c",&x,&y,&a,&b,&c);scanf("%d%d%c%c%c%c%c%c",&x,&y,&a,&a,&b,&b,&c,&c);.設i是int型變量,f是float型變量,用下面的語句給這兩個變量輸入值:scanf("i=%d,f=%f",&i,&f);為了把100和?65.12分別賦給i和f,則正確的輸入為〇A.100,765.12 B.i=100,f=765.12C.100765.12 D.i=100f=765.12.以下敘述中正確的是〇A.輸入項可以是ー個實型常量,如:scanf("%f",3.5);B.只有格式控制,沒有輸入項,也能正確輸入數(shù)據(jù)到存,如:scanf("a二%d,b=%d");C.當輸入ー個實型數(shù)據(jù)時,格式控制部分

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論