




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第1章C語言概述第1章C語言概述1.1本章講述的內(nèi)容本章講述如下內(nèi)容:(1)C語言的由來和發(fā)展。(2)C語言的特點(diǎn)和應(yīng)用。(3)C語言程序在結(jié)構(gòu)上的特點(diǎn)和書寫格式上的要求。(4)C語言程序中出現(xiàn)的鍵盤輸入操作和屏幕輸出操作的方法。(5)使用VisualC++?6.0編譯系統(tǒng)來實(shí)現(xiàn)的單文件程序和多文件程序的操作步驟。本章是本書的第1章,通過講述本章內(nèi)容,實(shí)際上是給學(xué)生回答下述一些問題:(1)什么是C語言?它為什么使用較為普遍?(2)C語言與其他語言有何不同?(3)C語言程序是什么樣子的?在結(jié)構(gòu)上有哪些特點(diǎn)?(4)編寫的C語言程序如何獲得其輸出結(jié)果?如何學(xué)好C語言?通過對(duì)本章內(nèi)容的講述讓學(xué)生得到如下收獲:(1)激發(fā)學(xué)生學(xué)習(xí)C語言的興趣,使學(xué)生一開始就下定決心學(xué)好C語言編程。(2)增強(qiáng)學(xué)生學(xué)好C語言的信心。通過課堂上認(rèn)真聽講,課后看書復(fù)習(xí)完成作業(yè),加強(qiáng)上機(jī)實(shí)踐,存在的問題及時(shí)解決,并不難學(xué)好這門功課。(3)掌握好上機(jī)實(shí)踐這一重要環(huán)節(jié)。從一開始就要重視上機(jī)實(shí)踐,學(xué)會(huì)通過上機(jī)實(shí)踐來解決疑難問題,培養(yǎng)自學(xué)能力和動(dòng)手能力。1.2重點(diǎn)內(nèi)容本章的重點(diǎn)內(nèi)容有如下3點(diǎn)。1.2.1C語言的特點(diǎn)講述C語言的特點(diǎn)時(shí),一定要一分為二:既要講述C語言吸取其他語言的經(jīng)驗(yàn)和教訓(xùn),使C語言超越其他語言特點(diǎn),這些特點(diǎn)作為C語言的優(yōu)點(diǎn)受到許多編程者的贊許,又要講述C語言由于過于強(qiáng)調(diào)它的某些特點(diǎn)而帶來的一些不足,或者說是“隱患”,而被后來的C++語言進(jìn)行了改進(jìn)??傊v述C語言要實(shí)事求是,讓學(xué)生對(duì)C語言有個(gè)全面的正確的認(rèn)識(shí),從而會(huì)對(duì)任何事物總要用一分為二的觀點(diǎn)來認(rèn)識(shí)。1.C語言的優(yōu)點(diǎn)講述C語言特點(diǎn)時(shí),主要講述它的優(yōu)點(diǎn),即它吸引編程者的魅力所在。(1)C語言語句簡練、書寫方便在這一點(diǎn)上,很多語言難以與C語言相比,主要表現(xiàn)在以下幾個(gè)方面。使用縮寫的類型說明符,使得書寫方便。特別是對(duì)最常用的類型,如整型用int,字符型char,只用英文單詞的前邊一部分,而不像有的語言使用全部英文單詞。運(yùn)算符比較多,有的運(yùn)算符功能很強(qiáng)。運(yùn)算符大多可將許多操作使用表達(dá)式來表示,而不必用函數(shù)實(shí)現(xiàn),這樣做不僅書寫簡單,而且可讀性也好。C語言中引進(jìn)一個(gè)三目運(yùn)算符,這是其他語言少有的,這個(gè)三目運(yùn)算符功能強(qiáng),具有簡單條件語句(if-else語句)的功能。自然,使用條件表達(dá)式語句比用條件語句簡練。采用花括號(hào)作定界符,比用語句或其他方法更為方便。C語言中,函數(shù)體的定界符、條件語句的if體、elseif體和else體的定界符以及循環(huán)語句的循環(huán)體的定界符都用一對(duì)花括號(hào)({}),這樣做既簡練,又方便。這比有些語言使用begin和end等標(biāo)識(shí)符要簡單得多。特別是又規(guī)定了如果if體、循環(huán)體是一條語句就不用定界符了。講到書寫方便,不得不講講預(yù)處理功能。特別是該功能的文件包含命令,將多個(gè)程序中相重復(fù)的部分提取出來,寫在一個(gè)被包含的文件中,只要在需要這部分內(nèi)容的程序中包含該文件就可以了,而不必重復(fù)寫一遍。此外,符號(hào)常量的引入也在某種程度為書寫帶來一定方便。(2)C語言的功能特強(qiáng)C語言功能強(qiáng)主要表現(xiàn)在它既具有高級(jí)語言的特性,又具有低級(jí)語言的特性。有人說它是一種中級(jí)語言,但是這種講法反映不出它的功能之強(qiáng)大。C語言功能強(qiáng)表現(xiàn)在如下幾個(gè)方面。C語言具有高級(jí)語言的所有功能,此外,在字符處理方面采用了字符指針等措施,更加便于字符處理。C語言具有地址操作和位操作以及寄存器操作等功能,這是功能是一般高級(jí)語言所不具有的,這是兼容了匯編語言的功能。C語言引進(jìn)指針的概念,為地址操作帶來了方便,同時(shí)指針又為數(shù)組元素的表示及作為函數(shù)的參數(shù)帶來了操作上的方便和功能上的增強(qiáng)。例如,傳址調(diào)用可實(shí)現(xiàn)函數(shù)之間信息的傳遞等。C語言還具有豐富的數(shù)據(jù)類型和存儲(chǔ)類。在數(shù)據(jù)類型方面,除了基本數(shù)據(jù)類型外,還提供了數(shù)組、結(jié)構(gòu)、聯(lián)合和枚舉等構(gòu)造類型,使C語言程序可以方便地實(shí)現(xiàn)各種復(fù)雜數(shù)據(jù)類型的操作,多種的存儲(chǔ)類也為C語言適應(yīng)不同情況的需要提供方便,進(jìn)一步增強(qiáng)了該語言的功能。(3)C語言是一種結(jié)構(gòu)化的程序設(shè)計(jì)語言結(jié)構(gòu)化程序設(shè)計(jì)語言的出現(xiàn)是編程史上的一個(gè)里程碑。結(jié)構(gòu)化程序設(shè)計(jì)語言要具備構(gòu)成結(jié)構(gòu)化程序設(shè)計(jì)的三種基本結(jié)構(gòu)模式的語句。這三種基本結(jié)構(gòu)模式分別是:順序結(jié)構(gòu)模式。分支結(jié)構(gòu)模式。循環(huán)結(jié)構(gòu)模式。C語言具有構(gòu)成上述三種結(jié)構(gòu)模式的語句,所以C語言是人們比較喜歡的一種結(jié)構(gòu)化程序設(shè)計(jì)語言,因?yàn)樗哂星斑呏v述的兩大特點(diǎn)。但是,還應(yīng)該看到,C語言是一種不完全的結(jié)構(gòu)化程序設(shè)計(jì)語言。它的不完全性表現(xiàn)在如下兩點(diǎn):C語言允許使用goto語句,但是對(duì)它的goto范圍進(jìn)行限制只允許在函數(shù)體內(nèi)進(jìn)行轉(zhuǎn)向。因此,C語言中最小的模塊是函數(shù)。完全的結(jié)構(gòu)化程序設(shè)計(jì)語言要求一個(gè)模塊只有一個(gè)入口和一個(gè)出口。不過,C語言中函數(shù)作為最小模塊,它雖然有一個(gè)入口,但是可以有兩個(gè)或兩個(gè)以上的出口。因?yàn)楹瘮?shù)內(nèi)允許有多個(gè)return語句。(4)C語言的移植性好移植性好是C語言的另一個(gè)優(yōu)點(diǎn),這也是C語言能夠廣泛用于各種型號(hào)機(jī)器上去的原因。C語言移植性好的原因是因?yàn)樵撜Z言的編譯系統(tǒng)較小,再加上它具有若干預(yù)處理命令,可在編譯前就處理一些命令,這都給C語言的移植帶來了方便。2.C語言的不足C語言過于強(qiáng)調(diào)它的某些特點(diǎn),即靈活和簡潔,也由此帶來了一些不足。(1)運(yùn)算符過多,優(yōu)先級(jí)較繁雜,使用者覺得難用難記運(yùn)算符共有44個(gè),優(yōu)先級(jí)有15種,結(jié)合性還有兩類。這無疑對(duì)數(shù)據(jù)運(yùn)算帶來方便,但是,對(duì)編程者帶來了難記和難用的不便。例如,運(yùn)算符星號(hào)(*)具有兩個(gè)功能,作為單目運(yùn)算符表示取內(nèi)容,作為雙目運(yùn)算符表示相乘運(yùn)算等等。(2)C語言是一種弱類型的語言C語言為了類型轉(zhuǎn)換的方便,對(duì)類型的要求很不嚴(yán)格,在許多情況下不做類型檢查。在有些情況下,C語言要求類型一致,由于不做類型檢查,出現(xiàn)不一致時(shí)也不報(bào)錯(cuò),結(jié)果造成了運(yùn)算結(jié)果的錯(cuò)誤。因此,在編程中對(duì)類型處理一定要慎重,應(yīng)盡量避免因類型不一致造成的差錯(cuò)。(3)對(duì)數(shù)組進(jìn)行動(dòng)態(tài)賦值時(shí)不做越界檢查這樣,當(dāng)給某個(gè)數(shù)組進(jìn)行動(dòng)態(tài)賦值時(shí),若賦值個(gè)數(shù)超過了數(shù)組元素的個(gè)數(shù),就可能造成數(shù)據(jù)上的混亂。指針的使用上也要特別注意,只有給指針賦以確定值時(shí)才可以使用。由于字符指針被賦值后它所指向新的字符串大小被確定,當(dāng)用該指針再指向新的字符串時(shí),要注意字符串長度可能引起的越界。因此,在有些情況下,使用字符指針不合適時(shí),應(yīng)使用字符數(shù)組。(4)產(chǎn)生二義性C語言出于優(yōu)化的考慮,允許不同的編譯系統(tǒng)對(duì)表達(dá)式或參數(shù)表中的操作數(shù)或數(shù)據(jù)項(xiàng)的計(jì)算順序有所不同,即有的編譯系統(tǒng)規(guī)定計(jì)算順序從左至右,有的編譯系統(tǒng)規(guī)定計(jì)算順序從右至左。這對(duì)于有副作用運(yùn)算符組成的操作數(shù)或數(shù)據(jù)項(xiàng)來講,有可能產(chǎn)生二義性,編程時(shí)應(yīng)盡量避免。1.2.2C語言程序在結(jié)構(gòu)上的特點(diǎn)從C語言的具體程序?qū)嵗锌梢钥吹?,C語言程序在結(jié)構(gòu)上的特點(diǎn)如下:C語言程序是由一個(gè)或多個(gè)文件組成的。組成C語言程序的每個(gè)文件是由一個(gè)或多個(gè)函數(shù)組成的。因此,可以說C語言程序是函數(shù)串,即C語言程序是由放在不同文件中的若干個(gè)函數(shù)組成的,函數(shù)是組成C語言程序的最小模塊。組成C語言程序的若干個(gè)函數(shù)中,有且僅有一個(gè)主函數(shù)main(?)。主函數(shù)所在的文函數(shù)是由函數(shù)頭和函數(shù)體組成。函數(shù)頭給出了函數(shù)名字、函數(shù)類型、函數(shù)參數(shù)的個(gè)數(shù)和類型。函數(shù)體由一對(duì)花括號(hào)括起的若干條語句組成。語句是由若干個(gè)單詞組成的。另外,由于C語言程序的可讀性較差,因此,在書寫上要求遵循著如下的約定。一行通常寫一條語句。有些語句可以寫成多行。分行書寫時(shí)不得將一個(gè)單詞分開。每條語句末尾加分號(hào)(;),不是語句結(jié)束不應(yīng)加分號(hào)?;ɡㄌ?hào)的書寫按規(guī)定的格式。本書規(guī)定:每個(gè)括號(hào)占一行,左右花括號(hào)都與使用它們的語句對(duì)齊,花括號(hào)內(nèi)語句向右縮進(jìn)。語句書寫時(shí)要按約定進(jìn)行縮進(jìn),以便提高可讀性。適當(dāng)使用注釋信息,可提高可讀性。1.2.3C語言程序的實(shí)現(xiàn)C語言程序的實(shí)現(xiàn)指的是如何使編寫的C語言程序獲得正確的輸出結(jié)果。C語言程序的實(shí)現(xiàn)方法與其他高級(jí)語言的實(shí)現(xiàn)方法相同,通常都是通過編輯、編譯和運(yùn)行三個(gè)步驟來實(shí)現(xiàn)。本書選用了VisualC++6.0集成工具軟件系統(tǒng)來實(shí)現(xiàn)C語言程序。這是一個(gè)C++語言的編譯系統(tǒng),也能用來編譯C語言的程序。使用該系統(tǒng)實(shí)現(xiàn)C語言程序時(shí),與使用TC2.0AK3.0系統(tǒng)等其他C語言編譯系統(tǒng)有如下幾點(diǎn)不同。每個(gè)C語言程序文件存盤時(shí)應(yīng)加?.C后綴,不應(yīng)默認(rèn)擴(kuò)展名。每個(gè)C語言程序開頭都加如下命令:#include<stdio.h>C程序中所有函數(shù)都不可省略類型說明,無返回值的函數(shù)加void,返回值為int型的函數(shù)加int。函數(shù)說明應(yīng)用原型,即在簡單說明的基礎(chǔ)上加上函數(shù)參數(shù)和個(gè)數(shù)的說明。定義函數(shù)時(shí),函數(shù)參數(shù)類型說明放在圓括號(hào)內(nèi),而不再另起一行進(jìn)行說明。上述幾點(diǎn)都是C++語言程序所要求的。一開始就讓學(xué)生學(xué)會(huì)在VisualC++6.0系統(tǒng)上運(yùn)行C語言程序的方法。下面分別講述單文件程序和多文件程序的實(shí)現(xiàn)方法。1.單文件C語言程序的實(shí)現(xiàn)方法單文件C語言程序的實(shí)現(xiàn)方法如下。(1)運(yùn)行VisualC++6.0系統(tǒng),出現(xiàn)該系統(tǒng)的主窗口。(2)選擇菜單欄中的File菜單項(xiàng),在下拉菜單中選擇New選項(xiàng),出現(xiàn)New對(duì)話框。(3)在New對(duì)話框中,選擇Files選項(xiàng)卡,出現(xiàn)Files選項(xiàng)卡的內(nèi)容。在其中雙擊C++SourceFile選項(xiàng),出現(xiàn)文本編輯窗口。(4)將C語言程序逐行輸入到計(jì)算機(jī)中,并可以進(jìn)行全屏幕編輯。使用File菜單中的save選項(xiàng)存盤。在“另存為”對(duì)話框的“文件名”文本框內(nèi)輸入文件名,并以?.c作擴(kuò)展名。在輸入文件前應(yīng)先選好存放?.c文件的文件夾。(5)選擇菜單欄中的Build菜單項(xiàng),在該下拉菜單中,選擇Build選項(xiàng),這時(shí)系統(tǒng)對(duì)工作區(qū)中的當(dāng)前文件進(jìn)行編譯、連接,生成可執(zhí)行文件。如果有編譯錯(cuò)和連接錯(cuò)誤,錯(cuò)誤信息將自動(dòng)出現(xiàn)在屏幕下方窗口中,用戶雙擊某條編譯錯(cuò)誤信息后,系統(tǒng)將在編輯窗口中使用右箭頭指出出錯(cuò)的行。這時(shí)用戶可根據(jù)出錯(cuò)信息修改錯(cuò)誤,修改后再繼續(xù)編譯,直到?jīng)]錯(cuò)為止。最終生成可執(zhí)行文件。(6)選擇Build菜單項(xiàng)中的Execute命令運(yùn)行該程序,將輸出結(jié)果顯示在一個(gè)DOS窗口中。查看完畢后,按任意鍵返回原窗口。編譯運(yùn)行后第一個(gè)程序后,在編輯下一個(gè)新程序前,應(yīng)將工作區(qū)內(nèi)的文件清除掉,其方法如下:選擇File下拉菜單中CloseWorkspace選項(xiàng),出現(xiàn)一個(gè)對(duì)話框,選擇“是”時(shí),將清除工作壓中的所有文件,選擇“否”時(shí),保留當(dāng)前文件,清除其他文件。開始上機(jī)時(shí),最好讓學(xué)生先不清除原來文件就進(jìn)行運(yùn)行,看一個(gè)會(huì)出現(xiàn)什么現(xiàn)象?這樣可使學(xué)生記住以后出現(xiàn)這種現(xiàn)象應(yīng)該如何處理。初次上機(jī)的學(xué)生多遇到一些錯(cuò)誤對(duì)他們有好處,他們可從錯(cuò)誤中學(xué)會(huì)解決方法,逐漸積累調(diào)試程序的經(jīng)驗(yàn)。2.多文件C語言程序的實(shí)現(xiàn)方法多文件C語言程序的實(shí)現(xiàn)方法如下。(1)將多個(gè)C語言程序的文件依次編輯后,存放在指定的文件夾中。(2)選擇File菜單項(xiàng)中New選項(xiàng),出現(xiàn)new對(duì)話框,單擊Projects選項(xiàng)卡,在出現(xiàn)的選項(xiàng)中,單擊Win32ConsoleApplication選項(xiàng),在Projectname文本框中輸入項(xiàng)目文件名,并在Location選框中輸入項(xiàng)目文件所需的源文件所在的路徑,選擇單選按鈕Createnewworkspace后,單擊OK按鈕。(3)出現(xiàn)Win32ConsoleApplication對(duì)話框,選擇Anemptyproject按鈕(默認(rèn)值),單擊Finish按鈕。(4)出現(xiàn)NewProjectInformation對(duì)話框,單擊OK按鈕。完成了創(chuàng)建一個(gè)空項(xiàng)目文件的任務(wù)。下面接著的操作是在向空項(xiàng)目文件中加入文件。(5)選擇菜單項(xiàng)Project的下拉菜單中的AddToProject選項(xiàng),再在它的級(jí)聯(lián)菜單中單擊Files選項(xiàng),出現(xiàn)打開文件對(duì)話框。在該對(duì)話框中,把要添加的文件加到該項(xiàng)目中。(6)選擇Build菜單項(xiàng),對(duì)創(chuàng)建的項(xiàng)目文件進(jìn)行編譯連接,生成可執(zhí)行文件。再使用運(yùn)行命令Execute運(yùn)行該命令,輸出結(jié)果出現(xiàn)在DOS窗口中。關(guān)于單文件和多文件的C語言程序的實(shí)現(xiàn),教科書中都有較詳細(xì)的描述,請(qǐng)參看。多文件程序還可以通過文件包含命令將某個(gè)或某些文件包含在文件中,運(yùn)行主文件便可以,有關(guān)這方面的操作請(qǐng)參考第4章“預(yù)處理功能”。1.3重要概念本章講述3個(gè)重要概念。1.程序和文件C語言程序是由文件組成的。一個(gè)C語言的程序可以是一個(gè)文件,也可以是多個(gè)文件。在多個(gè)文件的程序中只有一個(gè)主文件,即含有主函數(shù)的文件。要求學(xué)生把C語言程序和文件這兩個(gè)概念區(qū)分開來。初學(xué)者容易把文件和程序看成是一回事。認(rèn)為文件就是程序,程序就是文件,這是不對(duì)的。一定要讓學(xué)生牢固樹立程序是由文件組成的這個(gè)概念。由于我們多數(shù)情況下認(rèn)為C語言是由一個(gè)文件組成的,于是容易造成誤解,認(rèn)為C語言程序就是一個(gè)文件。因此,需要在第1章中就讓學(xué)生運(yùn)行一個(gè)多文件的程序,盡管學(xué)生對(duì)該程序可能不太理解,這沒有關(guān)系,關(guān)鍵要讓學(xué)生知道C語言程序可由多個(gè)文件組成。2.輸入語句和輸出語句在C語言程序中,總會(huì)出現(xiàn)輸入語句和輸出語句,特別是輸出語句,幾乎每個(gè)程序中都要出現(xiàn),因?yàn)橥ㄟ^它才會(huì)把程序的結(jié)果輸出顯示出來。輸入語句用來實(shí)現(xiàn)輸入操作,最方便的輸入操作是從計(jì)算機(jī)的鍵盤上輸入信息。實(shí)現(xiàn)鍵盤輸入操作的常用函數(shù)是標(biāo)準(zhǔn)格式輸入函數(shù)scanf(?)。該函數(shù)又稱為讀函數(shù),從標(biāo)準(zhǔn)設(shè)備鍵盤上向計(jì)算機(jī)讀入信息。因此,輸入語句從外部向計(jì)算機(jī)程序中的變量讀入信息,它是通過讀函數(shù)來實(shí)現(xiàn)的。輸出語句用來實(shí)現(xiàn)輸出操作,最常用的輸出操作是將計(jì)算出結(jié)果輸出到計(jì)算機(jī)顯示器的屏幕上去進(jìn)行顯示,實(shí)現(xiàn)這一操作的常用函數(shù)是標(biāo)準(zhǔn)格式輸出函數(shù)printf(?)。該函數(shù)又稱為寫函數(shù),它將計(jì)算機(jī)內(nèi)部的信息寫到輸出設(shè)備屏幕上去。因此,輸出語句從計(jì)算機(jī)中將信息傳遞到輸出設(shè)備上,它是通過寫函數(shù)來實(shí)現(xiàn)的。由于在C語言程序中,經(jīng)常出現(xiàn)讀函數(shù)scanf(?)和寫函數(shù)printf(?),因此要將C語言程序的輸入輸出操作搞清楚。3.源文件和可執(zhí)行文件使用高級(jí)語言編寫的程序文件稱為源文件,源文件名是由主文件名和擴(kuò)展名組成的,不同高級(jí)語言的源文件擴(kuò)展名不同。C語言源文件的擴(kuò)展名為.C。計(jì)算機(jī)對(duì)源文件不能直接識(shí)別。源文件需要經(jīng)過編譯和連接后生成可執(zhí)行文件,可執(zhí)行文件可由計(jì)算機(jī)直接識(shí)別,運(yùn)行可執(zhí)行文件后便可獲得該程序的結(jié)果。對(duì)于初學(xué)高級(jí)語言編程的學(xué)生,一定要讓他們搞清楚源文件和可執(zhí)行文件的關(guān)系。1.4常用語法和算法本章著重講述了標(biāo)準(zhǔn)設(shè)備的輸入操作方法和輸出操作方法。1.4.1鍵盤輸入操作方法鍵盤是計(jì)算機(jī)標(biāo)準(zhǔn)輸入設(shè)備。使用鍵盤向計(jì)算機(jī)輸入數(shù)據(jù)的讀函數(shù)有如下3種。1.讀取一個(gè)字符的函數(shù)getchar(?)該函數(shù)是從輸入數(shù)據(jù)緩沖區(qū)中一次讀取一個(gè)字符,并可將它賦予一個(gè)int型變量,因?yàn)樵摵瘮?shù)的返回值是讀取字符的ASCII值。該函數(shù)被包含在stdio.h文件中。2.讀取一個(gè)字符串的函數(shù)gets(?)該函數(shù)是從緩沖區(qū)中一次讀取一個(gè)字符串,字符串以換行符為結(jié)束符。該函數(shù)有一個(gè)參數(shù),用來存放讀取的字符串,它通常是一個(gè)字符數(shù)組。該函數(shù)格式如下:char*gets(s)chars[];該函數(shù)返回值是字符型指針。3.格式輸入函數(shù)scanf(?)該函數(shù)是程序中最常使用的讀函數(shù),它可以從鍵盤上讀取數(shù)據(jù),按指定的格式給若干個(gè)變量賦值。該函數(shù)格式如下:intscanf("<控制串>",<參數(shù)表>)由于該函數(shù)經(jīng)常使用,需要比較詳細(xì)地講述清楚,讓學(xué)生一次搞懂。該函數(shù)的參數(shù)可分為兩大部分:<控制串>和<參數(shù)表>。下面分別講述。(1)<控制串><控制串>是用一對(duì)雙撇號(hào)括起來的一個(gè)串。該串中包含格式符和一般字符。格式符由格式標(biāo)識(shí)符(%)和格式說明符組成。格式說明符是用一個(gè)小寫字母表示的某種輸入格式,常用的有如下幾種:d——十進(jìn)制整數(shù)。o——八進(jìn)制整數(shù)。x——十六進(jìn)制整數(shù)。u——無符號(hào)十進(jìn)制整數(shù)。f——小數(shù)型單精度浮點(diǎn)數(shù)。e——指數(shù)型單精度浮點(diǎn)數(shù)。c——單個(gè)字符。s——字符串。格式符中,%和格式說明符之間可以出現(xiàn)修飾符。常用的修飾符有如下兩種:l——用在d、o、x之前表示長整型數(shù),用在f、e之前表示雙精度浮點(diǎn)數(shù)。<數(shù)字>——使用整型數(shù)字表示接收輸入數(shù)據(jù)的最大寬度。一般字符用作匹配符??刂拼谐霈F(xiàn)的一般字符應(yīng)與輸入流中鍵入的相同字符進(jìn)行匹配,用來確定輸入流中的輸入數(shù)據(jù)項(xiàng),在輸入流中與匹配符相同的字符作為輸入項(xiàng)的分隔符。如果控制串中無匹配符,輸入流中默認(rèn)的分隔符為空白符(包括空格符、換行符和水平制表符等),通常用空格符作分隔符。(2)<參數(shù)表><參數(shù)表>中可有一個(gè)或多個(gè)參數(shù),多個(gè)參數(shù)用逗號(hào)分隔。要求每個(gè)參數(shù)都是一個(gè)地址值。一般來說,變量地址值表示為在變量名左邊加上一個(gè)運(yùn)算符&。要求<參數(shù)表>中參數(shù)的個(gè)數(shù)與<控制串>中格式符的個(gè)數(shù)相等,并要求<參數(shù)表>中各參數(shù)的類型與<控制串>中對(duì)應(yīng)的格式符的類型相同。1.4.2屏幕輸出操作方法1.輸出一個(gè)字符的函數(shù)putchar(?)該函數(shù)是將一個(gè)指定的字符輸出顯示到屏幕上。該函數(shù)格式如下:intputchar(c)charc;該函數(shù)有一個(gè)參數(shù),用來給出輸出顯示的字符,該函數(shù)的返回值是int型數(shù),即為輸出顯示的字符的ASCII碼值。該函數(shù)被放在stdio.h文件中。2.輸出一個(gè)字符串的函數(shù)puts(?)該函數(shù)將一個(gè)指定的字符串輸出顯示到屏幕的當(dāng)前光標(biāo)處。該函數(shù)格式如下:intputs(s)chars[];該函數(shù)有一個(gè)參數(shù),該參數(shù)給出輸出顯示的字符串,該函返回一個(gè)int型值。3.格式輸出函數(shù)printf(?)該函數(shù)是程序中最常用的一個(gè)輸出函數(shù),它將該函數(shù)參數(shù)表中若干個(gè)表達(dá)式的值按指定的格式和順序逐一顯示在屏幕上。該函數(shù)格式如下:intprintf("<控制串>",<參數(shù)表>)該函數(shù)的參數(shù)分為兩大部分:<控制串>和<參數(shù)表>,之間用逗號(hào)分隔。<控制器>是由一對(duì)雙撇號(hào)括起來的一個(gè)串。該串中可包含格式符和一般字符。格式符由格式標(biāo)識(shí)符(%)和格式說明符組成。格式說明符是由一個(gè)小寫字母表示的某種輸出格式,常用的有如下幾種:d——十進(jìn)制整數(shù)。o——八進(jìn)制整數(shù)。x——十六進(jìn)制整數(shù)。u——無符號(hào)十進(jìn)制數(shù)。c——單個(gè)字符。s——字符串。f——小數(shù)型單精度浮點(diǎn)數(shù)。e——指數(shù)型單精度浮點(diǎn)數(shù)。g——f和e兩個(gè)格式中輸出寬度短的一種。格式符中%和格式說明符之間可以出現(xiàn)修飾符。常用的修飾有如下幾種:l——用在d,o,x之前表示長整型數(shù),用在f,e,g之前表示雙精度浮點(diǎn)數(shù)。<數(shù)字>.<數(shù)字>—小數(shù)點(diǎn)(.)前的<數(shù)字>表示輸出數(shù)據(jù)項(xiàng)的最小寬度。當(dāng)輸出數(shù)據(jù)項(xiàng)的實(shí)際寬度小于最小寬度時(shí),按最小寬度輸出;當(dāng)輸出數(shù)據(jù)項(xiàng)的實(shí)際寬度大于寬度時(shí),按實(shí)際寬度輸出。小數(shù)點(diǎn)后邊的<數(shù)字>用來表示數(shù)據(jù)精度,對(duì)浮點(diǎn)數(shù)來講表示小數(shù)點(diǎn)后的位數(shù),對(duì)字符串來講表示輸出最多的字符個(gè)數(shù)?!?—表示輸出數(shù)據(jù)在域?qū)拑?nèi)左對(duì)齊。無此修飾符時(shí),表示右對(duì)齊。通常默認(rèn)的填補(bǔ)字符為空格符。一般字符照樣輸出。在一般字符中,具有圖形符號(hào)的可打印字符,將輸出顯示該字符對(duì)應(yīng)的圖形符號(hào)。對(duì)一些不可打印字符,可用轉(zhuǎn)義字符表示。常用的轉(zhuǎn)義字符見教材中的轉(zhuǎn)義字符表。關(guān)于這里講述的標(biāo)準(zhǔn)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030中國畜牧行業(yè)市場深度調(diào)研及競爭格局與投資策略研究報(bào)告
- 2025-2030中國特遣隊(duì)勞工管理軟件行業(yè)市場現(xiàn)狀供需分析及投資評(píng)估規(guī)劃分析研究報(bào)告
- 社區(qū)康復(fù)理論與技術(shù)
- 2025-2030中國烤魚行業(yè)市場深度調(diào)研及競爭格局與投資研究報(bào)告
- 2025-2030中國游戲圍兜和背心行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略研究報(bào)告
- 護(hù)理學(xué)導(dǎo)論:馬斯洛需要層次理論
- 2025-2030中國汽車營銷軟件行業(yè)市場現(xiàn)狀供需分析及投資評(píng)估規(guī)劃分析研究報(bào)告
- 2025年造價(jià)工程師案例分析模擬試卷:工程造價(jià)咨詢機(jī)構(gòu)內(nèi)部控制試題
- 普通企業(yè)業(yè)務(wù)流程操作說明手冊(cè)
- 海洋環(huán)境保護(hù)專業(yè)實(shí)習(xí)報(bào)告范文
- 八大特殊危險(xiǎn)作業(yè)危險(xiǎn)告知牌
- 工程項(xiàng)目綜合應(yīng)急預(yù)案(通用版)
- 半橋LLC諧振變換器設(shè)計(jì)與仿真
- 城市橋梁工程竣工驗(yàn)收
- 啟閉機(jī)及閘門安裝后檢驗(yàn)說明
- 保監(jiān)〔2005〕22號(hào)標(biāo)準(zhǔn)
- 哈工大畢業(yè)論文微型車轉(zhuǎn)向機(jī)設(shè)計(jì)與應(yīng)力分析
- 哈工大陣列信號(hào)處理答案
- GB_T 17468-2019 電力變壓器選用導(dǎo)則(高清正版)
- 期貨投資賬戶委托管理協(xié)議
- 各分部分項(xiàng)工程主要施工方案
評(píng)論
0/150
提交評(píng)論