第1章(含如何用VC++60建工程與寫、編譯、執(zhí)行程序)課件_第1頁
第1章(含如何用VC++60建工程與寫、編譯、執(zhí)行程序)課件_第2頁
第1章(含如何用VC++60建工程與寫、編譯、執(zhí)行程序)課件_第3頁
第1章(含如何用VC++60建工程與寫、編譯、執(zhí)行程序)課件_第4頁
第1章(含如何用VC++60建工程與寫、編譯、執(zhí)行程序)課件_第5頁
已閱讀5頁,還剩69頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

本章導(dǎo)讀本章通過C程序?qū)嵗治鲋郑棺x者從宏觀上整體把握和了解C程序的基本結(jié)構(gòu)、C程序的開發(fā)調(diào)試過程,對(duì)C程序開發(fā)設(shè)計(jì)有較深入的感性認(rèn)識(shí),進(jìn)而強(qiáng)化對(duì)計(jì)算機(jī)語言和程序設(shè)計(jì)的理解,為進(jìn)一步學(xué)習(xí)C語言程序設(shè)計(jì)打下基礎(chǔ)。《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本書目錄第1章C語言緒論本章主要知識(shí)點(diǎn)(1)VisualC++6.0環(huán)境運(yùn)行的C程序?qū)嵗?2)C程序的基本結(jié)構(gòu)。

(3)C語言的詞法和輸入/輸出。(4)程序設(shè)計(jì)語言發(fā)展。本章導(dǎo)讀《C語言程序設(shè)計(jì)》(VisualC++6.01第1章C語言緒論《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本章導(dǎo)讀1.2C程序的基本結(jié)構(gòu)1.3C語言的詞法1.5程序設(shè)計(jì)語言發(fā)展1.4C語言數(shù)據(jù)輸入和輸出1.1VisualC++6.0環(huán)境運(yùn)行的C程序?qū)嵗?/p>

第1章C語言緒論《C語言程序設(shè)計(jì)》(Visual2《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本章目錄1.1.2C程序的開發(fā)過程1.1.3VisualC++6.0集成環(huán)境1.1.1C程序?qū)嵗?.1VisualC++6.0環(huán)境運(yùn)行的C程序?qū)嵗禖語言程序設(shè)計(jì)》(VisualC++6.0環(huán)境)返3《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄2.C程序?qū)嵗?2)3.C程序?qū)嵗?3)1.C程序?qū)嵗?1)1.1.1C程序?qū)嵗禖語言程序設(shè)計(jì)》(VisualC++6.0環(huán)境)返41.1.1C程序?qū)嵗?)《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄1.C程序?qū)嵗?【例1.1】輸出一行信息:ThiseisaCprogram.程序名為l1_1.cpp。#include"stdio.h" /*文件包含*/main() /*主函數(shù)*/{printf("ThisisaCprogram.\n"); /*輸出信息*/}程序輸出結(jié)果:ThisisaCprogram.程序演示1.1.1C程序?qū)嵗?)《C語言程序設(shè)計(jì)》(Vis5[例1.1]程序演示單擊運(yùn)行輸入源程序彈出運(yùn)行結(jié)果窗口運(yùn)行結(jié)果返回例題返回本節(jié)目錄[例1.1]程序演示單擊運(yùn)行輸入源程序彈出運(yùn)行結(jié)果窗口運(yùn)行結(jié)61.1.1C程序?qū)嵗?)《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)2.C程序?qū)嵗?【例1.2】輸入兩個(gè)整數(shù),輸出它們的和。程序名為l1_2.cpp。#include"stdio.h" /*文件包含*/main() /*主函數(shù)*/{inta,b,c; /*聲明定義變量a,b和c*/scanf("%d%d",&a,&b); /*輸入變量a和b的值*/c=a+b; /*計(jì)算c等于a與b的和值*/printf("c=%d\n",c); /*輸出變量c的值*/}運(yùn)行程序輸入:90<CR>7<CR>程序結(jié)果:C=97返回本節(jié)目錄程序演示1.1.1C程序?qū)嵗?)《C語言程序設(shè)計(jì)》(Vis7[例1.2]程序演示單擊運(yùn)行輸入源程序彈出運(yùn)行結(jié)果窗口運(yùn)行結(jié)果輸入90和7,并以回車作分隔符和輸入結(jié)束符。返回例題返回本節(jié)目錄[例1.2]程序演示單擊運(yùn)行輸入源程序彈出運(yùn)行結(jié)果窗口運(yùn)行結(jié)81.1.1C程序?qū)嵗?)《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)3.C程序?qū)嵗?【例1.3】輸入兩個(gè)整數(shù),通過調(diào)用函數(shù)計(jì)算它們的和,然后輸出和值。程序名為l1_3.cpp。#include"stdio.h" /*文件包含*/intsum(intx,inty) /*定義sum函數(shù)*/{intz; /*聲明定義變量z*/z=x+y; /*計(jì)算z等于x與y的和值*/return(z); /*將z的值返回,通過sum帶回調(diào)用處*/}main() /*主函數(shù)*/{inta,b,c; /*聲明定義變量a,b和c*/scanf("%d%d",&a,&b); /*輸入變量a和b的值*/c=sum(a,b); /*調(diào)用sum函數(shù),將得到的值賦給c*/printf("c=%d\n",c); /*輸出變量c的值*/}運(yùn)行程序輸入:907<CR>程序結(jié)果:C=97返回本節(jié)目錄程序演示1.1.1C程序?qū)嵗?)《C語言程序設(shè)計(jì)》(Vis9[例1.3]程序演示單擊運(yùn)行輸入源程序彈出運(yùn)行結(jié)果窗口返回例題運(yùn)行結(jié)果輸入90和7,并以空格作間隔符,以回車作輸入結(jié)束符。返回本節(jié)目錄[例1.3]程序演示單擊運(yùn)行輸入源程序彈出運(yùn)行結(jié)果窗口返回例101.1.2C程序的開發(fā)過程《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄1.編輯2.編譯

(1)編輯指編輯創(chuàng)建源程序是將編寫好的C語言源程序代碼錄入到計(jì)算機(jī)中,形成源程序文件。(2)本書用VisualC++6.0環(huán)境提供的全屏幕編輯器。在附錄3中介紹TurboC2.0的環(huán)境情況。(3)在VC6.0環(huán)境中的源程序文件,其擴(kuò)展名為.cpp,而在TurboC2.0環(huán)境中的源程序文件的擴(kuò)展名為.c。(1)編譯源程序就是由C系統(tǒng)提供的編譯器將源程序文件的源代碼轉(zhuǎn)換成目標(biāo)代碼的過程。(2)編譯過程主要進(jìn)行詞法分析和語法分析,在分析過程中如果發(fā)現(xiàn)錯(cuò)誤,將錯(cuò)誤信息顯示在屏幕上通知用戶。經(jīng)過編譯后的目標(biāo)文件的擴(kuò)展名為.obj。

1.1.2C程序的開發(fā)過程《C語言程序設(shè)計(jì)》(Vis111.1.2C程序的開發(fā)過程《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄3.連接4.運(yùn)行

(1)連接過程是將編譯過程中生成的目標(biāo)代碼進(jìn)行連接處理,生成可執(zhí)行程序文件的過程。(2)在連接過程中,時(shí)常還要加入一些系統(tǒng)提供的庫(kù)文件代碼。經(jīng)過連接后生成的可執(zhí)行文件的擴(kuò)展名為.exe。運(yùn)行可執(zhí)行文件的方法很多,可在C系統(tǒng)下執(zhí)行“運(yùn)行”命令。也可以在操作系統(tǒng)下直接執(zhí)行可執(zhí)行文件??蓤?zhí)行的程序文件運(yùn)行后,將在屏幕上顯示程序執(zhí)行的結(jié)果。1.1.2C程序的開發(fā)過程《C語言程序設(shè)計(jì)》(Vis121.1.3VisualC++6.0集成環(huán)境《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄1.啟動(dòng)VisualC++6.0環(huán)境2.編輯源程序文件3.編譯和連接4.執(zhí)行利用VisualC++6.0集成環(huán)境開發(fā)C程序的過程如下:1.1.3VisualC++6.0集成環(huán)境《C語言131.1.3VisualC++6.0集成環(huán)境《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄1.啟動(dòng)VisualC++6.0環(huán)境

方法:?jiǎn)螕簟伴_始”-“程序”-“MicrosoftVisualstudio6.0”-“MicrosoftVisualC++6.0”命令,啟動(dòng)VisualC++,VC6主窗口如下:菜單欄項(xiàng)目工作區(qū)標(biāo)題欄輸出區(qū)工具欄狀態(tài)欄文件編輯區(qū)返回1.1.3VisualC++6.0集成環(huán)境《C語141.1.3VisualC++6.0集成環(huán)境《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄2.編輯源程序文件(1)建立新工程項(xiàng)目①單擊“文件”-“新建”,彈出“新建”對(duì)話框。②單擊“工程”選項(xiàng)卡;單擊“Win32ConsoleApplication”選項(xiàng);“工程”文件框中輸入項(xiàng)目名,如“gc1”和“位置”框輸入或選擇新項(xiàng)目所在位置,單擊“確定”按鈕。

彈出“Win32ConsoleApplicationStep1of1”對(duì)話框。③單擊“Anemptyproject”按鈕和“完成”按鈕。系統(tǒng)顯示“新建工程信息”對(duì)話框。單擊“確定”按鈕。

單擊“工程”單擊“Win32ConsoleApplication”輸入項(xiàng)目名選擇新項(xiàng)目位置單擊“確定”單擊該選項(xiàng)單擊“完成”單擊“確定”返回1.1.3VisualC++6.0集成環(huán)境《C語言151.1.3VisualC++6.0集成環(huán)境《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄2.編輯源程序文件(2)建立新項(xiàng)目中的文件①單擊“文件”-“新建”,彈出“新建”對(duì)話框。②

選擇“文件”選項(xiàng)卡。單擊“C++SourceFile”選項(xiàng),在“文件”文件框中輸入文件名,單擊“確定”按鈕。系統(tǒng)自動(dòng)返回VC6主窗口。③顯示文件編輯區(qū)窗口,在文件編輯區(qū)窗口輸入源程序文件。單擊“文件”輸入文件名單擊“C++Sourcefile”單擊“確定”選擇“添加工程”輸入源程序返回1.1.3VisualC++6.0集成環(huán)境《C語言161.1.3VisualC++6.0集成環(huán)境《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄3.編譯和連接

方法一:選擇主窗口菜單欄中“編譯”菜單項(xiàng);系統(tǒng)彈出下拉菜單,選擇“構(gòu)件”菜單命令。

方法二:?jiǎn)螕糁鞔翱诰幾g工具欄上的“Build”按鈕進(jìn)行編譯和連接。單擊“編譯”

(1)系統(tǒng)對(duì)程序文件進(jìn)行編譯和連接,生成以項(xiàng)目名稱命名的可執(zhí)行目標(biāo)代碼文件.exe。(2)編譯連接過程中,系統(tǒng)如發(fā)現(xiàn)程序有語法錯(cuò)誤,則在輸出區(qū)窗口中顯示錯(cuò)誤信息,給出錯(cuò)誤的性質(zhì)、出現(xiàn)位置和錯(cuò)誤的原因等。如果雙擊某條錯(cuò)誤,編輯區(qū)窗口右側(cè)出現(xiàn)一個(gè)箭頭,指示再現(xiàn)錯(cuò)誤的程序行。用戶據(jù)此對(duì)源程序進(jìn)行相應(yīng)的修改,并重新編譯和連接,直到通過為止。

單擊“Build”返回1.1.3VisualC++6.0集成環(huán)境《C語言171.1.3VisualC++6.0集成環(huán)境《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄4.執(zhí)行方法一:?jiǎn)螕簟熬幾g”菜單中“執(zhí)行”命令。方法二:?jiǎn)螕糁鞔翱诰幾g工具欄上的“BuildExecute”按鈕來執(zhí)行編譯連接后的程序。運(yùn)行成功,屏幕上輸出執(zhí)行結(jié)果,并提示信息:“Pressanykeytocontinue”。此時(shí)按任意鍵系統(tǒng)都將返回VC6主窗口。在執(zhí)行程序過程中出現(xiàn)運(yùn)行錯(cuò)誤。用戶要修改源程序文件并且重新編譯、連接和執(zhí)行。單擊“編譯”單擊“BuildExecute”返回1.1.3VisualC++6.0集成環(huán)境《C語言18《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本章目錄1.2.2C程序的書寫格式1.2.1C程序的結(jié)構(gòu)特點(diǎn)1.2C程序的基本結(jié)構(gòu)《C語言程序設(shè)計(jì)》(VisualC++6.0環(huán)境)返191.2.1C程序的結(jié)構(gòu)特點(diǎn)《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄

任何函數(shù)(包括主函數(shù)main())都是由函數(shù)說明和函數(shù)體兩部分組成。其一般結(jié)構(gòu)如下:[函數(shù)類型]函數(shù)名(函數(shù)參數(shù)表)

/*函數(shù)說明部分*/

{說明語句部分;

/*函數(shù)體部分*/

執(zhí)行語句部分;}1.2.1C程序的結(jié)構(gòu)特點(diǎn)《C語言程序設(shè)計(jì)》(Vi201.2.1C程序的結(jié)構(gòu)特點(diǎn)《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)1.C程序是由函數(shù)構(gòu)成的。2.函數(shù)由函數(shù)說明和函數(shù)體組成。3.C程序總是從main函數(shù)開始執(zhí)行。4.C程序語句和數(shù)據(jù)定義必須以分號(hào)“;”結(jié)束。5.C語言嚴(yán)格區(qū)分大小寫。6.C語言數(shù)據(jù)輸入和輸出是由庫(kù)函數(shù)實(shí)現(xiàn)的。7.C語言用/*注釋內(nèi)容*/形式進(jìn)行程序注釋。

一個(gè)C源程序可由一個(gè)main函數(shù)和若干個(gè)其他函數(shù)組成,其中必須有一個(gè)且只能有一個(gè)main函數(shù)。

函數(shù)說明部分包括函數(shù)名、函數(shù)返回值類型、函數(shù)的形式參數(shù)(形參)名、形式參數(shù)類型。函數(shù)體即函數(shù)說明部分下面的用一對(duì)大括號(hào)括起來的部分{……}。返回本節(jié)目錄

main函數(shù)始終是C程序執(zhí)行時(shí)入口處。

C語言中,分號(hào)是程序語句的結(jié)束標(biāo)志,也是C語句的必要組成部分。

如變量a和變量A系統(tǒng)認(rèn)定為兩個(gè)不同的變量。

C語言本身沒有輸入輸出語句。輸入和輸入操作是由庫(kù)函數(shù)scanf和printf等函數(shù)來實(shí)現(xiàn)的。

在“/*”和“*/”之間的所有字符都為注釋符,C系統(tǒng)不對(duì)注釋符進(jìn)行編譯。1.2.1C程序的結(jié)構(gòu)特點(diǎn)《C語言程序設(shè)計(jì)》(Vi211.2.2C程序的書寫格式《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄1.C程序書寫格式自由。2.C程序書寫采用縮進(jìn)格式。3.程序中適當(dāng)使用注釋信息。

根據(jù)語句的從屬關(guān)系,程序書寫時(shí)采用縮進(jìn)格式,使程序語句的層次結(jié)構(gòu)清晰,提高程序的可讀性。同一層次語句要左對(duì)齊,不同層次的語句要縮進(jìn)若干個(gè)字符,這樣程序?qū)哟吻宄?,便于閱讀和理解。

在書寫程序時(shí),適當(dāng)?shù)丶尤胱⑨屚瑯涌稍黾映绦虻目勺x性。

對(duì)于短語句可以多條語句書寫在同一行,也可以將長(zhǎng)語句分寫在多行。但需要注意,分行時(shí)不能將一個(gè)單詞分開,也不能將雙引號(hào)引起來的字符串分開。我們提倡一行一條語句的風(fēng)格。

1.2.2C程序的書寫格式《C語言程序設(shè)計(jì)》(Vi22《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本章目錄1.3.2C語言的詞法

1.3.1C語言的字符集

1.3C語言的詞法《C語言程序設(shè)計(jì)》(VisualC++6.0環(huán)境)返231.3.1C語言的字符集

《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)C語言的字符集是由ASCII字符集組成(1)26個(gè)小寫字母:a—z。返回本節(jié)目錄(2)26個(gè)大寫字母:A—Z。(3)10個(gè)數(shù)字:0—9。(4)其他符號(hào):+、-、*、/、=、,、.、_、)、(、&、^、%、$、#、@、!、~、<、>、?、’、;、:、”、)、[、]、{、}、-、\、空格。

1.3.1C語言的字符集《C語言程序設(shè)計(jì)》(Vis241.3.2C語言的詞法

《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄C語言使用一組字符來構(gòu)造具有特殊意義的符號(hào),我們稱之為詞法符號(hào)。主要有關(guān)鍵字、標(biāo)識(shí)符、運(yùn)算符、分隔符、常量及注釋符等。1.關(guān)鍵字

關(guān)鍵字是系統(tǒng)預(yù)定義的詞法符號(hào),具有特定的含義。ANSIC規(guī)定有32個(gè)關(guān)鍵字,C++又補(bǔ)充了29個(gè)關(guān)鍵字。C和C++均不允許對(duì)關(guān)鍵字重新定義,即程序員不能用這樣關(guān)鍵字再定義其他含義。

關(guān)鍵字舉例:

intcharfloatlongifelseforwhilesizeofstaticstruct1.3.2C語言的詞法《C語言程序設(shè)計(jì)》(Visu25注釋符前面已經(jīng)介紹。運(yùn)算符是對(duì)數(shù)據(jù)進(jìn)行某種操作的單詞,是系統(tǒng)預(yù)定義的函數(shù),具體內(nèi)容將在第2章詳細(xì)介紹。常量是程序中由書寫形式?jīng)Q定類型和值的數(shù)據(jù)。C語言常量有數(shù)字常量、字符常量和字符串常量。將在第2章中做詳細(xì)介紹。

1.3.2C語言的詞法

《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄2.標(biāo)識(shí)符3.分隔符

4.其他標(biāo)識(shí)符是指用來標(biāo)識(shí)程序中用到的變量名、函數(shù)名、類型名、數(shù)組名、文件名以及符號(hào)常量名的有效字符序列。C語言標(biāo)識(shí)符命名必須符合語法規(guī)定:標(biāo)識(shí)符是以字母或下劃線開始,由字母、數(shù)字和下劃線組成的符號(hào)串。

分隔符是程序中的標(biāo)點(diǎn)符號(hào),用來分隔單詞或程序正文。(1)空格:作為單詞之間的分隔符。(2)逗號(hào):作為變量之間或函數(shù)的多個(gè)參數(shù)之間的分隔符。(3)冒號(hào):作為語句標(biāo)號(hào)與語句間的分隔符以及switch語句中case與語句序列之間的分隔符。(4)大括號(hào):作為函數(shù)體、復(fù)合語句等定界。

注釋符前面已經(jīng)介紹。運(yùn)算符是對(duì)數(shù)據(jù)進(jìn)行某種操26《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本章目錄1.4.2C語言字符數(shù)據(jù)輸入/輸出1.4.3C++的輸入輸出流1.4.1C語言格式輸入/輸出1.4C語言數(shù)據(jù)輸入和輸出《C語言程序設(shè)計(jì)》(VisualC++6.0環(huán)境)返271.4.1C語言格式輸入/輸出

《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)

標(biāo)準(zhǔn)函數(shù)庫(kù)中定義了一些輸入輸出函數(shù),程序在調(diào)用這些庫(kù)函數(shù)時(shí),必須在源文件的開始處加上頭文件的“包含命令”,格式如下:#include<庫(kù)函數(shù)頭文件名>或#include"庫(kù)函數(shù)頭文件名"

1.格式輸出函數(shù)printf()printf()函數(shù)的作用:向計(jì)算機(jī)系統(tǒng)默認(rèn)的輸出設(shè)備(一般指終端或顯示器)輸出一個(gè)或多個(gè)任意類型的數(shù)據(jù)。printf()函數(shù)的一般格式如下:

printf(“格式字符串”[,輸出項(xiàng)表]);(1)“輸出項(xiàng)列表”是需要輸出的一些數(shù)據(jù)。數(shù)據(jù)可以有0項(xiàng)、1項(xiàng)或多個(gè)輸出項(xiàng),多個(gè)輸出項(xiàng)之間用“,”分隔,并且輸出項(xiàng)應(yīng)與格式控制相匹配。(2)“格式控制”是用雙引號(hào)括起來的一串字符,也稱格式控制字符串,包括格式說明、普通字符和轉(zhuǎn)義字符3種。格式控制字符串的功能是指定輸出數(shù)據(jù)的格式和類型。下面均以【例1.2】和【例1.3】中的printf("c=%d\n",c);進(jìn)行說明。其中,“c=”是普通字符,“%d”是格式說明,’\n’是轉(zhuǎn)義字符,而c是輸出項(xiàng)。返回本節(jié)目錄1.4.1C語言格式輸入/輸出《C語言程序設(shè)計(jì)》(281.4.1C語言格式輸入/輸出

《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)(1)普通字符:普通字符內(nèi)容按照原樣向輸出設(shè)備輸出。如“c=”在屏幕上輸出結(jié)果就是:c=返回本節(jié)目錄下面分別對(duì)“格式控制”的3種形式進(jìn)行說明(2)格式說明:格式說明是以字符“%”開頭,加上格式字符組成,表示對(duì)數(shù)據(jù)輸出格式的控制,它與后面的數(shù)據(jù)輸出項(xiàng)對(duì)應(yīng)。格式說明與數(shù)據(jù)輸出項(xiàng)的數(shù)據(jù)個(gè)數(shù)、數(shù)據(jù)類型及數(shù)據(jù)排放次序相匹配對(duì)應(yīng)。如,格式說明“%d”與輸出項(xiàng)“c”對(duì)應(yīng),即控制數(shù)據(jù)輸出項(xiàng)c按格式說明"%d"規(guī)定的格式(十進(jìn)制整數(shù)形式)輸出。因此,據(jù)c值為97,輸出結(jié)果是:97如果,格式說明“%d”改為“%c”,則輸出項(xiàng)c的值將按“%c”規(guī)定的格式(字符型數(shù)據(jù))輸出。因此,據(jù)c值為97,輸出結(jié)果是:a‘a(chǎn)’為97對(duì)應(yīng)的ASCII字符。常用的格式字符情況如教材表1-1所示。(3)轉(zhuǎn)義字符:轉(zhuǎn)義字符是以’\’開頭和其他特殊字符組合而成的具有一定含義的字符。如’\n’表示“回車換行”符。

轉(zhuǎn)義字符是ASCII字符中的一種,主要用來控制外部設(shè)備。常用的一些轉(zhuǎn)義字符及其含義見教材表1-4所示。1.4.1C語言格式輸入/輸出《C語言程序設(shè)計(jì)》(291.4.1C語言格式輸入/輸出

《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)2.格式輸入函數(shù)scanf()格式控制輸入函數(shù)scanf作用是:按指定的格式從標(biāo)準(zhǔn)輸出設(shè)備(鍵盤)輸入數(shù)據(jù)。

函數(shù)scanf()的使用格式為:scanf(“格式控制”,地址列表);(1)“地址列表”是由接收數(shù)據(jù)變量的地址組成。求地址運(yùn)算符為&,如&a,&b分別表示變量a和變量b的地址。若接收多個(gè)數(shù)據(jù),則變量地址之間用“,”分隔,并且地址列表與格式控制中的格式說明相匹配。(2)“格式控制”基本同于printf函數(shù)的格式控制。格式控制的功能是規(guī)定輸入數(shù)據(jù)的格式。格式控制包括格式說明和普通字符,一般不包括轉(zhuǎn)義字符。

返回本節(jié)目錄1.4.1C語言格式輸入/輸出《C語言程序設(shè)計(jì)》(30

(1)格式說明之間有普通字符或轉(zhuǎn)義字符時(shí),則數(shù)據(jù)輸入時(shí),必須按它們的原樣輸入這些字符作為數(shù)據(jù)分隔符。如,scanf("%d,%d",&a,&b);輸入數(shù)據(jù)時(shí),數(shù)據(jù)之間必須用“,”作為分隔符??奢斎?90,7<CR>。(2)連續(xù)輸入多個(gè)數(shù)值型數(shù)據(jù)時(shí),數(shù)據(jù)之間要用空格、Tab鍵或回車鍵作分隔符。如【例1.2】和【例1.3】中語句scanf(“%d%d”,&a,&b);輸入數(shù)據(jù)時(shí),數(shù)據(jù)之間可用空格、Tab鍵或回車鍵分隔符??奢斎?907<CR>。

(3)連續(xù)輸入多個(gè)字符數(shù)據(jù)時(shí),各字符間不輸入分隔符。如,scanf("%c%c",&a,&b);輸入數(shù)據(jù)時(shí),連續(xù)輸入相應(yīng)的字符??奢斎?AB<CR>。則將‘A’字符輸給了變量a,將‘B’字符輸給了變量b。(4)數(shù)據(jù)型數(shù)據(jù)和字符型數(shù)據(jù)交叉輸入時(shí),若字符在前,則字符和數(shù)值型數(shù)據(jù)間可以加入分隔符(空格、Tab鍵和回車鍵);若數(shù)值在前,則數(shù)值和字符間不可以加分隔符(空格、Tab鍵和回車鍵)。(5)輸入數(shù)據(jù)時(shí),可以指定數(shù)據(jù)所占列數(shù),系統(tǒng)自動(dòng)按它截取所需數(shù)據(jù)。如,scanf("%3d%3d",&a,&b);若輸入:12345678<CR>系統(tǒng)自動(dòng)將123賦給a,456賦給b。

(6)輸入數(shù)據(jù)時(shí)不能規(guī)定精度。如,scanf("%5.2f",&a);是不合法的。

1.4.1C語言格式輸入/輸出

《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)注意:格式字符和附加格式字符使用應(yīng)與輸出項(xiàng)相匹配。返回本節(jié)目錄

(1)格式說明之間有普通字符或轉(zhuǎn)義字符時(shí),則數(shù)據(jù)31字符輸入函數(shù)getchar的一般格式為:getchar()getchar作用:在標(biāo)準(zhǔn)輸入設(shè)備(鍵盤)讀入一個(gè)字符。例如,charc;c=getchar();執(zhí)行時(shí),要求輸入一個(gè)字符,如輸入:3<CR>,則輸入的字符’3’就賦給了變量c。1.4.2C語言字符數(shù)據(jù)輸入/輸出

《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)1.字符輸出函數(shù)putchar()2.字符輸入函數(shù)getchar()字符輸出函數(shù)putchar的一般格式為:putchar(c)putchar作用:在標(biāo)準(zhǔn)輸出設(shè)備(顯示器)上輸出c對(duì)應(yīng)的一個(gè)字符。輸出的字符是括號(hào)中c所對(duì)應(yīng)的一個(gè)字符。c可以是單字符數(shù)據(jù)、整型數(shù)據(jù)及其表達(dá)式。如,charc=’Y’;putchar(c);輸出結(jié)果為Y。如,inta=98;putchar(a+1);輸出結(jié)果為c。返回本節(jié)目錄字符輸入函數(shù)getchar的一般格式為:1.4.2C語言321.4.3C++的輸入輸出流《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)C++程序中,還增加了特有的輸入/輸出流,由輸入/輸出流庫(kù)提供。cin和cout是流庫(kù)預(yù)定義標(biāo)準(zhǔn)輸入流對(duì)象和標(biāo)準(zhǔn)輸出流對(duì)象,分別連接鍵盤和顯示器。

頭文件iostream.h包含了操作所有輸入/輸出流所需的基本信息。因此,大多數(shù)C++程序都將iostream.h頭文件包括到用戶的源文件中,即:#include<iostream.h>1.輸出cout輸出流對(duì)象cout必須配合插入操作符<<使用。輸出格式為:

cout<<輸出項(xiàng)1<<輸出項(xiàng)2<<……<<輸出項(xiàng)n;功能:首先計(jì)算出各輸出項(xiàng)的值,然后將其轉(zhuǎn)換成字符流形式輸出。返回本節(jié)目錄【例1.4】將【例1.1】使用輸出流cout完成數(shù)據(jù)輸出。程序名為l1_4.cpp。#include<iostream.h> /*文件包含*/main() /*主函數(shù)*/{cout<<"ThisisaCprogram.\n"; /*輸出信息*/}輸入項(xiàng)還可以是各種控制字符或函數(shù),如回車換行符’\n’等。常用的輸入/輸出流格式控制符見教材表1-5所示。使用格式控制符要包含頭文件iomanip.h,即源文件開始應(yīng)增加文件包含命令#include<iomanip.h>。

1.4.3C++的輸入輸出流《C語言程序設(shè)計(jì)》(33【例1.5】將【例1.2】使用輸入流cin和輸出流cout完成。程序名為l1_5.cpp。#include<iostream.h> /*文件包含*/#include<iomanip.h>main() /*主函數(shù)*/{inta,b,c; /*聲明定義變量a,b和c*/cin>>a>>b; /*輸入變量a和b的值*/c=a+b; /*計(jì)算c等于a與b的和值*/cout<<"c="<<c<<endl; /*輸出變量c的值*/}1.4.3C++的輸入輸出流《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄2.輸入cin輸入流對(duì)象cin必須配合提取操作符>>來完成數(shù)據(jù)的輸入。輸入格式為:cin>>變量1>>變量2>>……>>變量n;功能:讀取用戶輸入的字符串,按相應(yīng)變量的類型轉(zhuǎn)換成二進(jìn)制代碼寫入內(nèi)存。執(zhí)行到輸入語句時(shí),用戶按語句中變量的順序和類型鍵入各變量的值。輸入多個(gè)數(shù)據(jù)時(shí),以空格、Tab鍵和回車鍵作分隔符。

【例1.5】將【例1.2】使用輸入流cin和輸出流cout34《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本章目錄1.5.2高級(jí)語言與C語言

1.5.1程序與程序設(shè)計(jì)語言1.5程序設(shè)計(jì)語言發(fā)展《C語言程序設(shè)計(jì)》(VisualC++6.0環(huán)境)返351.5.1程序與程序設(shè)計(jì)語言《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄1.程序2.程序設(shè)計(jì)語言

程序是控制計(jì)算機(jī)完成特定功能的一組有序指令的集合。前面我們見到的各個(gè)例題【例1.1】、【例1.2】、【例1.3】和【例1.4】和【例1.5】都是一些小的程序,都能完成一定的功能。編寫程序所使用的語言稱為程序設(shè)計(jì)語言,它是人與計(jì)算機(jī)之間進(jìn)行信息交流的工具。前面我們介紹的程序【例1.1】、【例1.2】和【例1.3】是用TurboC程序設(shè)計(jì)語言編寫的,而【例1.4】和【例1.5】是用VisualC++程序設(shè)計(jì)語言編寫的。可見,C語言和VisualC++語言是兩種程序設(shè)計(jì)語言,是程序員編程的工具。1.5.1程序與程序設(shè)計(jì)語言《C語言程序設(shè)計(jì)》(V36C語言仍然是當(dāng)今世界上最為流行的面向過程的程序設(shè)計(jì)語言之一。C語言的產(chǎn)生最早可追溯到1960年出現(xiàn)的ALGOL60。在ALGOL60基礎(chǔ)上,1963年英國(guó)劍橋大學(xué)推出了更接近硬件,規(guī)模較大的CPL(CombinedProgrammingLanguage)語言。1967年對(duì)CPL進(jìn)行簡(jiǎn)化推出了BCPL(BaxicCombinedProgrammingLanguage)語言。1970年,美國(guó)貝爾實(shí)驗(yàn)室的KenThompson在BCPL基礎(chǔ)上,設(shè)計(jì)出更簡(jiǎn)單,很接近硬件的B語言,用B語言編寫的UNIX操作系統(tǒng)在DECPDP-7機(jī)上實(shí)現(xiàn)。在1972至1973年間,貝爾實(shí)驗(yàn)室的DennisRitchie在B語言基礎(chǔ)上設(shè)計(jì)出了C語言。1973年KenThompson和Dennis

Ritchie合作把原來用匯編語言編寫的UNIX操作系統(tǒng)中90%以上的部分用C語言改寫。1983年,美國(guó)國(guó)家標(biāo)準(zhǔn)化協(xié)會(huì)ANSI制定了ANSIC標(biāo)準(zhǔn)。1990年,國(guó)際標(biāo)準(zhǔn)化組織ISO接受了87ANSIC為ISO標(biāo)準(zhǔn)。C語言具有功能強(qiáng)大,容易理解,較好的移植性,較低級(jí)的語言功能和模塊化結(jié)構(gòu)程序設(shè)計(jì)等優(yōu)勢(shì),使C語言已經(jīng)風(fēng)靡全球,成為世界上應(yīng)用最為廣泛的幾種高級(jí)計(jì)算機(jī)語言之一。1.5.2高級(jí)語言與C語言

《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄1.程序設(shè)計(jì)語言的發(fā)展2.C語言

程序設(shè)計(jì)語言的發(fā)展從低級(jí)到高級(jí)經(jīng)歷了機(jī)器語言、匯編語言、高級(jí)語言到面向?qū)ο笳Z言四個(gè)階段。C語言是一種高級(jí)語言。

C語言仍然是當(dāng)今世界上最為流行的面向過程的程序設(shè)37本章導(dǎo)讀本章通過C程序?qū)嵗治鲋?,使讀者從宏觀上整體把握和了解C程序的基本結(jié)構(gòu)、C程序的開發(fā)調(diào)試過程,對(duì)C程序開發(fā)設(shè)計(jì)有較深入的感性認(rèn)識(shí),進(jìn)而強(qiáng)化對(duì)計(jì)算機(jī)語言和程序設(shè)計(jì)的理解,為進(jìn)一步學(xué)習(xí)C語言程序設(shè)計(jì)打下基礎(chǔ)?!禖語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本書目錄第1章C語言緒論本章主要知識(shí)點(diǎn)(1)VisualC++6.0環(huán)境運(yùn)行的C程序?qū)嵗?2)C程序的基本結(jié)構(gòu)。

(3)C語言的詞法和輸入/輸出。(4)程序設(shè)計(jì)語言發(fā)展。本章導(dǎo)讀《C語言程序設(shè)計(jì)》(VisualC++6.038第1章C語言緒論《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本章導(dǎo)讀1.2C程序的基本結(jié)構(gòu)1.3C語言的詞法1.5程序設(shè)計(jì)語言發(fā)展1.4C語言數(shù)據(jù)輸入和輸出1.1VisualC++6.0環(huán)境運(yùn)行的C程序?qū)嵗?/p>

第1章C語言緒論《C語言程序設(shè)計(jì)》(Visual39《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本章目錄1.1.2C程序的開發(fā)過程1.1.3VisualC++6.0集成環(huán)境1.1.1C程序?qū)嵗?.1VisualC++6.0環(huán)境運(yùn)行的C程序?qū)嵗禖語言程序設(shè)計(jì)》(VisualC++6.0環(huán)境)返40《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄2.C程序?qū)嵗?2)3.C程序?qū)嵗?3)1.C程序?qū)嵗?1)1.1.1C程序?qū)嵗禖語言程序設(shè)計(jì)》(VisualC++6.0環(huán)境)返411.1.1C程序?qū)嵗?)《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄1.C程序?qū)嵗?【例1.1】輸出一行信息:ThiseisaCprogram.程序名為l1_1.cpp。#include"stdio.h" /*文件包含*/main() /*主函數(shù)*/{printf("ThisisaCprogram.\n"); /*輸出信息*/}程序輸出結(jié)果:ThisisaCprogram.程序演示1.1.1C程序?qū)嵗?)《C語言程序設(shè)計(jì)》(Vis42[例1.1]程序演示單擊運(yùn)行輸入源程序彈出運(yùn)行結(jié)果窗口運(yùn)行結(jié)果返回例題返回本節(jié)目錄[例1.1]程序演示單擊運(yùn)行輸入源程序彈出運(yùn)行結(jié)果窗口運(yùn)行結(jié)431.1.1C程序?qū)嵗?)《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)2.C程序?qū)嵗?【例1.2】輸入兩個(gè)整數(shù),輸出它們的和。程序名為l1_2.cpp。#include"stdio.h" /*文件包含*/main() /*主函數(shù)*/{inta,b,c; /*聲明定義變量a,b和c*/scanf("%d%d",&a,&b); /*輸入變量a和b的值*/c=a+b; /*計(jì)算c等于a與b的和值*/printf("c=%d\n",c); /*輸出變量c的值*/}運(yùn)行程序輸入:90<CR>7<CR>程序結(jié)果:C=97返回本節(jié)目錄程序演示1.1.1C程序?qū)嵗?)《C語言程序設(shè)計(jì)》(Vis44[例1.2]程序演示單擊運(yùn)行輸入源程序彈出運(yùn)行結(jié)果窗口運(yùn)行結(jié)果輸入90和7,并以回車作分隔符和輸入結(jié)束符。返回例題返回本節(jié)目錄[例1.2]程序演示單擊運(yùn)行輸入源程序彈出運(yùn)行結(jié)果窗口運(yùn)行結(jié)451.1.1C程序?qū)嵗?)《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)3.C程序?qū)嵗?【例1.3】輸入兩個(gè)整數(shù),通過調(diào)用函數(shù)計(jì)算它們的和,然后輸出和值。程序名為l1_3.cpp。#include"stdio.h" /*文件包含*/intsum(intx,inty) /*定義sum函數(shù)*/{intz; /*聲明定義變量z*/z=x+y; /*計(jì)算z等于x與y的和值*/return(z); /*將z的值返回,通過sum帶回調(diào)用處*/}main() /*主函數(shù)*/{inta,b,c; /*聲明定義變量a,b和c*/scanf("%d%d",&a,&b); /*輸入變量a和b的值*/c=sum(a,b); /*調(diào)用sum函數(shù),將得到的值賦給c*/printf("c=%d\n",c); /*輸出變量c的值*/}運(yùn)行程序輸入:907<CR>程序結(jié)果:C=97返回本節(jié)目錄程序演示1.1.1C程序?qū)嵗?)《C語言程序設(shè)計(jì)》(Vis46[例1.3]程序演示單擊運(yùn)行輸入源程序彈出運(yùn)行結(jié)果窗口返回例題運(yùn)行結(jié)果輸入90和7,并以空格作間隔符,以回車作輸入結(jié)束符。返回本節(jié)目錄[例1.3]程序演示單擊運(yùn)行輸入源程序彈出運(yùn)行結(jié)果窗口返回例471.1.2C程序的開發(fā)過程《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄1.編輯2.編譯

(1)編輯指編輯創(chuàng)建源程序是將編寫好的C語言源程序代碼錄入到計(jì)算機(jī)中,形成源程序文件。(2)本書用VisualC++6.0環(huán)境提供的全屏幕編輯器。在附錄3中介紹TurboC2.0的環(huán)境情況。(3)在VC6.0環(huán)境中的源程序文件,其擴(kuò)展名為.cpp,而在TurboC2.0環(huán)境中的源程序文件的擴(kuò)展名為.c。(1)編譯源程序就是由C系統(tǒng)提供的編譯器將源程序文件的源代碼轉(zhuǎn)換成目標(biāo)代碼的過程。(2)編譯過程主要進(jìn)行詞法分析和語法分析,在分析過程中如果發(fā)現(xiàn)錯(cuò)誤,將錯(cuò)誤信息顯示在屏幕上通知用戶。經(jīng)過編譯后的目標(biāo)文件的擴(kuò)展名為.obj。

1.1.2C程序的開發(fā)過程《C語言程序設(shè)計(jì)》(Vis481.1.2C程序的開發(fā)過程《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄3.連接4.運(yùn)行

(1)連接過程是將編譯過程中生成的目標(biāo)代碼進(jìn)行連接處理,生成可執(zhí)行程序文件的過程。(2)在連接過程中,時(shí)常還要加入一些系統(tǒng)提供的庫(kù)文件代碼。經(jīng)過連接后生成的可執(zhí)行文件的擴(kuò)展名為.exe。運(yùn)行可執(zhí)行文件的方法很多,可在C系統(tǒng)下執(zhí)行“運(yùn)行”命令。也可以在操作系統(tǒng)下直接執(zhí)行可執(zhí)行文件??蓤?zhí)行的程序文件運(yùn)行后,將在屏幕上顯示程序執(zhí)行的結(jié)果。1.1.2C程序的開發(fā)過程《C語言程序設(shè)計(jì)》(Vis491.1.3VisualC++6.0集成環(huán)境《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄1.啟動(dòng)VisualC++6.0環(huán)境2.編輯源程序文件3.編譯和連接4.執(zhí)行利用VisualC++6.0集成環(huán)境開發(fā)C程序的過程如下:1.1.3VisualC++6.0集成環(huán)境《C語言501.1.3VisualC++6.0集成環(huán)境《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄1.啟動(dòng)VisualC++6.0環(huán)境

方法:?jiǎn)螕簟伴_始”-“程序”-“MicrosoftVisualstudio6.0”-“MicrosoftVisualC++6.0”命令,啟動(dòng)VisualC++,VC6主窗口如下:菜單欄項(xiàng)目工作區(qū)標(biāo)題欄輸出區(qū)工具欄狀態(tài)欄文件編輯區(qū)返回1.1.3VisualC++6.0集成環(huán)境《C語511.1.3VisualC++6.0集成環(huán)境《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄2.編輯源程序文件(1)建立新工程項(xiàng)目①單擊“文件”-“新建”,彈出“新建”對(duì)話框。②單擊“工程”選項(xiàng)卡;單擊“Win32ConsoleApplication”選項(xiàng);“工程”文件框中輸入項(xiàng)目名,如“gc1”和“位置”框輸入或選擇新項(xiàng)目所在位置,單擊“確定”按鈕。

彈出“Win32ConsoleApplicationStep1of1”對(duì)話框。③單擊“Anemptyproject”按鈕和“完成”按鈕。系統(tǒng)顯示“新建工程信息”對(duì)話框。單擊“確定”按鈕。

單擊“工程”單擊“Win32ConsoleApplication”輸入項(xiàng)目名選擇新項(xiàng)目位置單擊“確定”單擊該選項(xiàng)單擊“完成”單擊“確定”返回1.1.3VisualC++6.0集成環(huán)境《C語言521.1.3VisualC++6.0集成環(huán)境《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄2.編輯源程序文件(2)建立新項(xiàng)目中的文件①單擊“文件”-“新建”,彈出“新建”對(duì)話框。②

選擇“文件”選項(xiàng)卡。單擊“C++SourceFile”選項(xiàng),在“文件”文件框中輸入文件名,單擊“確定”按鈕。系統(tǒng)自動(dòng)返回VC6主窗口。③顯示文件編輯區(qū)窗口,在文件編輯區(qū)窗口輸入源程序文件。單擊“文件”輸入文件名單擊“C++Sourcefile”單擊“確定”選擇“添加工程”輸入源程序返回1.1.3VisualC++6.0集成環(huán)境《C語言531.1.3VisualC++6.0集成環(huán)境《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄3.編譯和連接

方法一:選擇主窗口菜單欄中“編譯”菜單項(xiàng);系統(tǒng)彈出下拉菜單,選擇“構(gòu)件”菜單命令。

方法二:?jiǎn)螕糁鞔翱诰幾g工具欄上的“Build”按鈕進(jìn)行編譯和連接。單擊“編譯”

(1)系統(tǒng)對(duì)程序文件進(jìn)行編譯和連接,生成以項(xiàng)目名稱命名的可執(zhí)行目標(biāo)代碼文件.exe。(2)編譯連接過程中,系統(tǒng)如發(fā)現(xiàn)程序有語法錯(cuò)誤,則在輸出區(qū)窗口中顯示錯(cuò)誤信息,給出錯(cuò)誤的性質(zhì)、出現(xiàn)位置和錯(cuò)誤的原因等。如果雙擊某條錯(cuò)誤,編輯區(qū)窗口右側(cè)出現(xiàn)一個(gè)箭頭,指示再現(xiàn)錯(cuò)誤的程序行。用戶據(jù)此對(duì)源程序進(jìn)行相應(yīng)的修改,并重新編譯和連接,直到通過為止。

單擊“Build”返回1.1.3VisualC++6.0集成環(huán)境《C語言541.1.3VisualC++6.0集成環(huán)境《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄4.執(zhí)行方法一:?jiǎn)螕簟熬幾g”菜單中“執(zhí)行”命令。方法二:?jiǎn)螕糁鞔翱诰幾g工具欄上的“BuildExecute”按鈕來執(zhí)行編譯連接后的程序。運(yùn)行成功,屏幕上輸出執(zhí)行結(jié)果,并提示信息:“Pressanykeytocontinue”。此時(shí)按任意鍵系統(tǒng)都將返回VC6主窗口。在執(zhí)行程序過程中出現(xiàn)運(yùn)行錯(cuò)誤。用戶要修改源程序文件并且重新編譯、連接和執(zhí)行。單擊“編譯”單擊“BuildExecute”返回1.1.3VisualC++6.0集成環(huán)境《C語言55《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本章目錄1.2.2C程序的書寫格式1.2.1C程序的結(jié)構(gòu)特點(diǎn)1.2C程序的基本結(jié)構(gòu)《C語言程序設(shè)計(jì)》(VisualC++6.0環(huán)境)返561.2.1C程序的結(jié)構(gòu)特點(diǎn)《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄

任何函數(shù)(包括主函數(shù)main())都是由函數(shù)說明和函數(shù)體兩部分組成。其一般結(jié)構(gòu)如下:[函數(shù)類型]函數(shù)名(函數(shù)參數(shù)表)

/*函數(shù)說明部分*/

{說明語句部分;

/*函數(shù)體部分*/

執(zhí)行語句部分;}1.2.1C程序的結(jié)構(gòu)特點(diǎn)《C語言程序設(shè)計(jì)》(Vi571.2.1C程序的結(jié)構(gòu)特點(diǎn)《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)1.C程序是由函數(shù)構(gòu)成的。2.函數(shù)由函數(shù)說明和函數(shù)體組成。3.C程序總是從main函數(shù)開始執(zhí)行。4.C程序語句和數(shù)據(jù)定義必須以分號(hào)“;”結(jié)束。5.C語言嚴(yán)格區(qū)分大小寫。6.C語言數(shù)據(jù)輸入和輸出是由庫(kù)函數(shù)實(shí)現(xiàn)的。7.C語言用/*注釋內(nèi)容*/形式進(jìn)行程序注釋。

一個(gè)C源程序可由一個(gè)main函數(shù)和若干個(gè)其他函數(shù)組成,其中必須有一個(gè)且只能有一個(gè)main函數(shù)。

函數(shù)說明部分包括函數(shù)名、函數(shù)返回值類型、函數(shù)的形式參數(shù)(形參)名、形式參數(shù)類型。函數(shù)體即函數(shù)說明部分下面的用一對(duì)大括號(hào)括起來的部分{……}。返回本節(jié)目錄

main函數(shù)始終是C程序執(zhí)行時(shí)入口處。

C語言中,分號(hào)是程序語句的結(jié)束標(biāo)志,也是C語句的必要組成部分。

如變量a和變量A系統(tǒng)認(rèn)定為兩個(gè)不同的變量。

C語言本身沒有輸入輸出語句。輸入和輸入操作是由庫(kù)函數(shù)scanf和printf等函數(shù)來實(shí)現(xiàn)的。

在“/*”和“*/”之間的所有字符都為注釋符,C系統(tǒng)不對(duì)注釋符進(jìn)行編譯。1.2.1C程序的結(jié)構(gòu)特點(diǎn)《C語言程序設(shè)計(jì)》(Vi581.2.2C程序的書寫格式《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄1.C程序書寫格式自由。2.C程序書寫采用縮進(jìn)格式。3.程序中適當(dāng)使用注釋信息。

根據(jù)語句的從屬關(guān)系,程序書寫時(shí)采用縮進(jìn)格式,使程序語句的層次結(jié)構(gòu)清晰,提高程序的可讀性。同一層次語句要左對(duì)齊,不同層次的語句要縮進(jìn)若干個(gè)字符,這樣程序?qū)哟吻宄?,便于閱讀和理解。

在書寫程序時(shí),適當(dāng)?shù)丶尤胱⑨屚瑯涌稍黾映绦虻目勺x性。

對(duì)于短語句可以多條語句書寫在同一行,也可以將長(zhǎng)語句分寫在多行。但需要注意,分行時(shí)不能將一個(gè)單詞分開,也不能將雙引號(hào)引起來的字符串分開。我們提倡一行一條語句的風(fēng)格。

1.2.2C程序的書寫格式《C語言程序設(shè)計(jì)》(Vi59《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本章目錄1.3.2C語言的詞法

1.3.1C語言的字符集

1.3C語言的詞法《C語言程序設(shè)計(jì)》(VisualC++6.0環(huán)境)返601.3.1C語言的字符集

《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)C語言的字符集是由ASCII字符集組成(1)26個(gè)小寫字母:a—z。返回本節(jié)目錄(2)26個(gè)大寫字母:A—Z。(3)10個(gè)數(shù)字:0—9。(4)其他符號(hào):+、-、*、/、=、,、.、_、)、(、&、^、%、$、#、@、!、~、<、>、?、’、;、:、”、)、[、]、{、}、-、\、空格。

1.3.1C語言的字符集《C語言程序設(shè)計(jì)》(Vis611.3.2C語言的詞法

《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄C語言使用一組字符來構(gòu)造具有特殊意義的符號(hào),我們稱之為詞法符號(hào)。主要有關(guān)鍵字、標(biāo)識(shí)符、運(yùn)算符、分隔符、常量及注釋符等。1.關(guān)鍵字

關(guān)鍵字是系統(tǒng)預(yù)定義的詞法符號(hào),具有特定的含義。ANSIC規(guī)定有32個(gè)關(guān)鍵字,C++又補(bǔ)充了29個(gè)關(guān)鍵字。C和C++均不允許對(duì)關(guān)鍵字重新定義,即程序員不能用這樣關(guān)鍵字再定義其他含義。

關(guān)鍵字舉例:

intcharfloatlongifelseforwhilesizeofstaticstruct1.3.2C語言的詞法《C語言程序設(shè)計(jì)》(Visu62注釋符前面已經(jīng)介紹。運(yùn)算符是對(duì)數(shù)據(jù)進(jìn)行某種操作的單詞,是系統(tǒng)預(yù)定義的函數(shù),具體內(nèi)容將在第2章詳細(xì)介紹。常量是程序中由書寫形式?jīng)Q定類型和值的數(shù)據(jù)。C語言常量有數(shù)字常量、字符常量和字符串常量。將在第2章中做詳細(xì)介紹。

1.3.2C語言的詞法

《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本節(jié)目錄2.標(biāo)識(shí)符3.分隔符

4.其他標(biāo)識(shí)符是指用來標(biāo)識(shí)程序中用到的變量名、函數(shù)名、類型名、數(shù)組名、文件名以及符號(hào)常量名的有效字符序列。C語言標(biāo)識(shí)符命名必須符合語法規(guī)定:標(biāo)識(shí)符是以字母或下劃線開始,由字母、數(shù)字和下劃線組成的符號(hào)串。

分隔符是程序中的標(biāo)點(diǎn)符號(hào),用來分隔單詞或程序正文。(1)空格:作為單詞之間的分隔符。(2)逗號(hào):作為變量之間或函數(shù)的多個(gè)參數(shù)之間的分隔符。(3)冒號(hào):作為語句標(biāo)號(hào)與語句間的分隔符以及switch語句中case與語句序列之間的分隔符。(4)大括號(hào):作為函數(shù)體、復(fù)合語句等定界。

注釋符前面已經(jīng)介紹。運(yùn)算符是對(duì)數(shù)據(jù)進(jìn)行某種操63《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)返回本章目錄1.4.2C語言字符數(shù)據(jù)輸入/輸出1.4.3C++的輸入輸出流1.4.1C語言格式輸入/輸出1.4C語言數(shù)據(jù)輸入和輸出《C語言程序設(shè)計(jì)》(VisualC++6.0環(huán)境)返641.4.1C語言格式輸入/輸出

《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)

標(biāo)準(zhǔn)函數(shù)庫(kù)中定義了一些輸入輸出函數(shù),程序在調(diào)用這些庫(kù)函數(shù)時(shí),必須在源文件的開始處加上頭文件的“包含命令”,格式如下:#include<庫(kù)函數(shù)頭文件名>或#include"庫(kù)函數(shù)頭文件名"

1.格式輸出函數(shù)printf()printf()函數(shù)的作用:向計(jì)算機(jī)系統(tǒng)默認(rèn)的輸出設(shè)備(一般指終端或顯示器)輸出一個(gè)或多個(gè)任意類型的數(shù)據(jù)。printf()函數(shù)的一般格式如下:

printf(“格式字符串”[,輸出項(xiàng)表]);(1)“輸出項(xiàng)列表”是需要輸出的一些數(shù)據(jù)。數(shù)據(jù)可以有0項(xiàng)、1項(xiàng)或多個(gè)輸出項(xiàng),多個(gè)輸出項(xiàng)之間用“,”分隔,并且輸出項(xiàng)應(yīng)與格式控制相匹配。(2)“格式控制”是用雙引號(hào)括起來的一串字符,也稱格式控制字符串,包括格式說明、普通字符和轉(zhuǎn)義字符3種。格式控制字符串的功能是指定輸出數(shù)據(jù)的格式和類型。下面均以【例1.2】和【例1.3】中的printf("c=%d\n",c);進(jìn)行說明。其中,“c=”是普通字符,“%d”是格式說明,’\n’是轉(zhuǎn)義字符,而c是輸出項(xiàng)。返回本節(jié)目錄1.4.1C語言格式輸入/輸出《C語言程序設(shè)計(jì)》(651.4.1C語言格式輸入/輸出

《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)(1)普通字符:普通字符內(nèi)容按照原樣向輸出設(shè)備輸出。如“c=”在屏幕上輸出結(jié)果就是:c=返回本節(jié)目錄下面分別對(duì)“格式控制”的3種形式進(jìn)行說明(2)格式說明:格式說明是以字符“%”開頭,加上格式字符組成,表示對(duì)數(shù)據(jù)輸出格式的控制,它與后面的數(shù)據(jù)輸出項(xiàng)對(duì)應(yīng)。格式說明與數(shù)據(jù)輸出項(xiàng)的數(shù)據(jù)個(gè)數(shù)、數(shù)據(jù)類型及數(shù)據(jù)排放次序相匹配對(duì)應(yīng)。如,格式說明“%d”與輸出項(xiàng)“c”對(duì)應(yīng),即控制數(shù)據(jù)輸出項(xiàng)c按格式說明"%d"規(guī)定的格式(十進(jìn)制整數(shù)形式)輸出。因此,據(jù)c值為97,輸出結(jié)果是:97如果,格式說明“%d”改為“%c”,則輸出項(xiàng)c的值將按“%c”規(guī)定的格式(字符型數(shù)據(jù))輸出。因此,據(jù)c值為97,輸出結(jié)果是:a‘a(chǎn)’為97對(duì)應(yīng)的ASCII字符。常用的格式字符情況如教材表1-1所示。(3)轉(zhuǎn)義字符:轉(zhuǎn)義字符是以’\’開頭和其他特殊字符組合而成的具有一定含義的字符。如’\n’表示“回車換行”符。

轉(zhuǎn)義字符是ASCII字符中的一種,主要用來控制外部設(shè)備。常用的一些轉(zhuǎn)義字符及其含義見教材表1-4所示。1.4.1C語言格式輸入/輸出《C語言程序設(shè)計(jì)》(661.4.1C語言格式輸入/輸出

《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)2.格式輸入函數(shù)scanf()格式控制輸入函數(shù)scanf作用是:按指定的格式從標(biāo)準(zhǔn)輸出設(shè)備(鍵盤)輸入數(shù)據(jù)。

函數(shù)scanf()的使用格式為:scanf(“格式控制”,地址列表);(1)“地址列表”是由接收數(shù)據(jù)變量的地址組成。求地址運(yùn)算符為&,如&a,&b分別表示變量a和變量b的地址。若接收多個(gè)數(shù)據(jù),則變量地址之間用“,”分隔,并且地址列表與格式控制中的格式說明相匹配。(2)“格式控制”基本同于printf函數(shù)的格式控制。格式控制的功能是規(guī)定輸入數(shù)據(jù)的格式。格式控制包括格式說明和普通字符,一般不包括轉(zhuǎn)義字符。

返回本節(jié)目錄1.4.1C語言格式輸入/輸出《C語言程序設(shè)計(jì)》(67

(1)格式說明之間有普通字符或轉(zhuǎn)義字符時(shí),則數(shù)據(jù)輸入時(shí),必須按它們的原樣輸入這些字符作為數(shù)據(jù)分隔符。如,scanf("%d,%d",&a,&b);輸入數(shù)據(jù)時(shí),數(shù)據(jù)之間必須用“,”作為分隔符??奢斎?90,7<CR>。(2)連續(xù)輸入多個(gè)數(shù)值型數(shù)據(jù)時(shí),數(shù)據(jù)之間要用空格、Tab鍵或回車鍵作分隔符。如【例1.2】和【例1.3】中語句scanf(“%d%d”,&a,&b);輸入數(shù)據(jù)時(shí),數(shù)據(jù)之間可用空格、Tab鍵或回車鍵分隔符??奢斎?907<CR>。

(3)連續(xù)輸入多個(gè)字符數(shù)據(jù)時(shí),各字符間不輸入分隔符。如,scanf("%c%c",&a,&b);輸入數(shù)據(jù)時(shí),連續(xù)輸入相應(yīng)的字符。可輸入:AB<CR>。則將‘A’字符輸給了變量a,將‘B’字符輸給了變量b。(4)數(shù)據(jù)型數(shù)據(jù)和字符型數(shù)據(jù)交叉輸入時(shí),若字符在前,則字符和數(shù)值型數(shù)據(jù)間可以加入分隔符(空格、Tab鍵和回車鍵);若數(shù)值在前,則數(shù)值和字符間不可以加分隔符(空格、Tab鍵和回車鍵)。(5)輸入數(shù)據(jù)時(shí),可以指定數(shù)據(jù)所占列數(shù),系統(tǒng)自動(dòng)按它截取所需數(shù)據(jù)。如,scanf("%3d%3d",&a,&b);若輸入:12345678<CR>系統(tǒng)自動(dòng)將123賦給a,456賦給b。

(6)輸入數(shù)據(jù)時(shí)不能規(guī)定精度。如,scanf("%5.2f",&a);是不合法的。

1.4.1C語言格式輸入/輸出

《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)注意:格式字符和附加格式字符使用應(yīng)與輸出項(xiàng)相匹配。返回本節(jié)目錄

(1)格式說明之間有普通字符或轉(zhuǎn)義字符時(shí),則數(shù)據(jù)68字符輸入函數(shù)getchar的一般格式為:getchar()getchar作用:在標(biāo)準(zhǔn)輸入設(shè)備(鍵盤)讀入一個(gè)字符。例如,charc;c=getchar();執(zhí)行時(shí),要求輸入一個(gè)字符,如輸入:3<CR>,則輸入的字符’3’就賦給了變量c。1.4.2C語言字符數(shù)據(jù)輸入/輸出

《C語言程序設(shè)計(jì)》

(VisualC++6.0環(huán)境)1.字符輸出函數(shù)putchar()2.字符輸入函數(shù)getchar()字符輸出函數(shù)putchar的一般格式為:putchar(c)putchar作用:在標(biāo)準(zhǔn)輸出設(shè)備(顯示器)上輸出c對(duì)應(yīng)的一個(gè)字符。輸出的字符是括號(hào)中c所對(duì)應(yīng)的一個(gè)字符。c

溫馨提示

  • 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. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論