版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第1章C語言程序概述《C語言程序設(shè)計(jì)》課程簡介
C語言是當(dāng)今使用最廣泛的高級語言,是操作系統(tǒng)、編譯系統(tǒng)等大型復(fù)雜系統(tǒng)的首選語言。實(shí)踐證明,用該語言編寫的程序,靈活、方便、簡潔、高效、數(shù)據(jù)結(jié)構(gòu)豐富、功能齊全。C語言自問世以來,很快就流行于全世界,并為各種規(guī)模的通用計(jì)算機(jī)所必備。同時(shí),C語言以其靈活方便的特點(diǎn),成為培養(yǎng)學(xué)生計(jì)算機(jī)語言思維,了解計(jì)算機(jī)編程思想的最佳語言,它已被當(dāng)今國內(nèi)外眾多主要高校列為各理工科專業(yè)必修課程。《C語言程序設(shè)計(jì)》概述6C語言程序的開發(fā)環(huán)境1.1C語言的發(fā)展及特點(diǎn)1.2C語言的基本結(jié)構(gòu)1.3C語言的字符集、標(biāo)識符、關(guān)鍵字1.4C語言的開發(fā)環(huán)境1.5實(shí)踐1.1C語言的發(fā)展及特點(diǎn)
C語言是當(dāng)今社會應(yīng)用很廣泛,受到眾多用戶歡迎的一種計(jì)算機(jī)算法語言。它既可適合于作為系統(tǒng)軟件的描述語言,也可用來開發(fā)應(yīng)用軟件。
D.M.Ritchie1972年在B的基礎(chǔ)上研制了C語言,并用C語言寫成了第一個(gè)在PDP-11計(jì)算機(jī)上實(shí)現(xiàn)的UNIX操作系統(tǒng)。目前在微型計(jì)算機(jī)上使用的C語言有多種版本,這些不同的版本,基本部分是相同的,但在有關(guān)規(guī)定上又略有差異。1.1.1C語言的發(fā)展概況1.1C語言的發(fā)展及特點(diǎn)1.1.2C語言的特點(diǎn)簡潔緊湊、靈活方便01020304運(yùn)算符豐富數(shù)據(jù)結(jié)構(gòu)豐富C是結(jié)構(gòu)式語言C語法限制不太嚴(yán)格、程序設(shè)計(jì)自由度大050607C語言允許直接訪問物理地址,可以直接對硬件進(jìn)行操作用C語言編程,生成的目標(biāo)代碼質(zhì)量高,程序執(zhí)行效率高、可移植性好。1.2C語言的基本結(jié)構(gòu)第一個(gè)入門編程代碼便是"HelloWorld!"#include<stdio.h>//頭文件intmain()//主函數(shù),程序的入口函數(shù){/*代碼區(qū)*/printf(“Hello,World!”);//printf輸出函數(shù)return0;//返回值為0}1.2C語言的基本結(jié)構(gòu)頭文件說明:#include<stdio.h>(1)#:預(yù)處理指令(2)include:文件包含指令,只能包含頭文件,xxx.h----頭文件xxx.c----源文件(3)<>,"":表示搜索頭文件的一種方式<>:庫文件,庫函數(shù)所在的頭文件,系統(tǒng)自帶的頭文件表示程序會在系統(tǒng)目錄(軟件安裝的目錄)中查找頭文件"":適用于程序員自定義的頭文件(4)stdio.h:標(biāo)準(zhǔn)輸入輸出的頭文件,有關(guān)標(biāo)準(zhǔn)輸入輸出函數(shù)的聲明都在該文件(5)頭文件:關(guān)于一類功能相近的函數(shù)的聲明信息如:pow()--求冪,sqrt()--開方關(guān)于數(shù)學(xué)計(jì)算的功能------#include<math.h>關(guān)于字符串操作的功能------#include<string.h>關(guān)于輸入輸出功能------#include<stdio.h>注意:用到哪個(gè)函數(shù),則需要包含該函數(shù)的所在頭文件1.2C語言的基本結(jié)構(gòu)主函數(shù)的理解intmain()//main函數(shù){.......return0;}int指明main()函數(shù)的返回值類型,表示函數(shù)的返回值類型是int型。函數(shù)名后面的括號一般包含傳遞給函數(shù)的信息,沒有則表示為空。main函數(shù)結(jié)論:(1)C語言程序執(zhí)行過程中,主函數(shù)是程序的入口函數(shù),即程序是從主函數(shù)開始執(zhí)行的,而不是從第一個(gè)函數(shù)開始執(zhí)行;(2)main函數(shù)中語句執(zhí)行。其他函數(shù)體的內(nèi)容不執(zhí)行;(3)main函數(shù)執(zhí)行結(jié)束,意味著整體的C程序執(zhí)行結(jié)束;(4)一個(gè)c程序,有并且只有一個(gè)main函數(shù),如果是兩個(gè)則會出錯(cuò);(5)main()書寫只能是這樣,不能寫成其他形式;(6)主函數(shù)是自動調(diào)用,程序運(yùn)行,主函數(shù)自動調(diào)用了,子函數(shù)必須人為調(diào)用才行1.2C語言的基本結(jié)構(gòu)注釋的解釋:
(1)功能:解釋說明,代碼的調(diào)試(2)特性:被注釋掉的代碼不再進(jìn)行編譯,即使有語法錯(cuò)誤,也不會檢測出來(3)形式:單行注釋://之后的內(nèi)容為被注釋的內(nèi)容。(4)多行注釋:/**/其中的內(nèi)容為被注釋掉的內(nèi)容。用法:(1)對文件注釋(2)對函數(shù)注釋(3)對程序語句注釋1.3C語言的字符集、標(biāo)識符與關(guān)鍵字英文字母:大小寫各26個(gè),共計(jì)52個(gè)。01020304阿拉伯?dāng)?shù)字:0到9共計(jì)10個(gè)。下劃線:_。其它特殊符號:主要指運(yùn)算符,運(yùn)算符通常由一至兩個(gè)特殊符號組成。
特殊符號集如下:+-*/%++--<>=>=<===!=|&!‖&&∧~《》()[]{}\?:.,;1.3.1C語言的字符集1.3C語言的字符集、標(biāo)識符與關(guān)鍵字1.3.1C語言的標(biāo)識符1、標(biāo)識符只能以英文大小寫字母、和下劃線開頭,而不能用其他任何字符或數(shù)字開頭。例如以下就是錯(cuò)誤的例子:int%a;//錯(cuò)誤,標(biāo)識符不能以符號開頭int8C[8];//錯(cuò)誤,不能以數(shù)字開頭2、標(biāo)識符中只能包含英文大小寫字母、下劃線和阿拉伯?dāng)?shù)字,但是不能以阿拉伯?dāng)?shù)字開頭。inta8;//正確int_adf589S_5;//正確3、標(biāo)識符區(qū)分大小寫,Acd和acd、caDd和cadd、_8Fc9和_8fc9都是不相同的標(biāo)識符。4、標(biāo)識符不能是關(guān)鍵字。intfloat;//錯(cuò)誤,float是關(guān)鍵字。intFloat;//正確1.3C語言的字符集、標(biāo)識符與關(guān)鍵字1.3.1C語言的標(biāo)識符除了這些硬性規(guī)則外,標(biāo)識符的命名最好具有具體的意義,以便于觀察、閱讀和維護(hù)。//定義某長方體的長度、寬度和高度inta;//高度intb;//寬度intc;//高度可以改成如下定義:intc_Long;intc_Width;intc_Height;1.3C語言的字符集、標(biāo)識符與關(guān)鍵字1.3.1C語言的關(guān)鍵字關(guān)鍵字是一種語言中規(guī)定具有特定含義的標(biāo)識符。關(guān)鍵字不能作為變量或函數(shù)名來使用,用戶只能根據(jù)系統(tǒng)的規(guī)定使用它們。根據(jù)ANSI標(biāo)準(zhǔn),C語言可使用以下32個(gè)關(guān)鍵字:autobreakcasecharconstcontinuedefault
dodoubleelseenumexternfloatforgotoifintlongregisterreturnshortsignedsizeofstaticstructswitchtypedefunionunsignedvoidvolatilewhile1.4C語言程序的開發(fā)環(huán)境編寫好的C語言程序要經(jīng)過編輯(輸入)、編譯和連接后才能形成可執(zhí)行的程序。程序源程序目標(biāo)程序可執(zhí)行程序結(jié)果*?c?obj?exe編譯編輯連接運(yùn)行C語言程序上機(jī)過程1、編輯是在程序編譯之前做的準(zhǔn)備工作,主要包括:頭文件的包含(include),宏定義(define,替換),條件編譯(ifdef,ifndef)將源文件通過編輯生成預(yù)處理文件(*.c或*.cpp)2、編譯:將編輯過后的文件編譯生成目標(biāo)文件(*.obj)3、連接:將目標(biāo)文件通過連接生成可執(zhí)行文件(*.exe)4、執(zhí)行:運(yùn)行可執(zhí)行文件。DevC++開發(fā)環(huán)境
(1)新建源文件打開DevC++,在上方菜單欄中選擇“文件-->新建-->源代碼”:以創(chuàng)建一個(gè)“helloworld!”簡單源程序?yàn)槔篋evC++開發(fā)環(huán)境
可以增加如下設(shè)置,直接生成固定的程序框架。選擇工具-->編輯器選項(xiàng)-->代碼-->缺省值,說明:#include<bits/stdc++.h>為萬能頭文件,包含了常用的如【輸入輸出頭文件】#include<stdio.h>、【數(shù)學(xué)計(jì)算頭文件】#include<math.h>、【字符串頭文件】#include<string.h>等。DevC++開發(fā)環(huán)境
經(jīng)過如上設(shè)置后,新建文件窗口如圖:在空白文件中輸入要執(zhí)行的代碼DevC++開發(fā)環(huán)境
在上方菜單欄中選擇“文件-->保存”,或者按下Ctrl+S組合鍵,都可以保存源文件說明:C++是在C語言的基礎(chǔ)上進(jìn)行的擴(kuò)展,C++已經(jīng)包含了C語言的全部內(nèi)容,所以大部分IDE默認(rèn)創(chuàng)建的是C++文件。編譯器會根據(jù)源文件的后綴來判斷代碼的種類,這里我們選擇*.cpp,將源文件命名為helloworld.cpp。DevC++開發(fā)環(huán)境
(3)生成可執(zhí)行程序在上方菜單欄中選擇“運(yùn)行-->編譯”,就可以完成helloworld.cpp源文件的編譯工作?;蛘咧苯影垂ぞ邫诘牡谝粋€(gè)圖標(biāo)對源文件進(jìn)行編譯?;蛘咧苯影聪翭9鍵,也能夠完成編譯工作,這樣更加便捷。單擊第二個(gè)圖標(biāo),運(yùn)行該程序,運(yùn)行結(jié)果如下:1.5實(shí)踐環(huán)節(jié)解釋例1.1使用printf()與%d格式化輸出整數(shù)。#include<stdio.h>intmain(){intnumber;printf("輸入一個(gè)整數(shù):");scanf("%d",&number);//通過鍵盤給程序中的變量賦值//printf("你輸入的整數(shù)是:%d\n",number);return0;}1.5實(shí)踐環(huán)節(jié)解釋例1.2使用printf()與%c格式化輸出一個(gè)字符。#include<stdio.h>intmain(){charc;//聲明一個(gè)字符串變量C//printf("輸入一個(gè)字符(僅限1個(gè)字母):");scanf("%c",&c);//通過鍵盤給程序中的變量賦值//printf("輸入的字符為%c\n",c);return0;}1.5實(shí)踐環(huán)節(jié)解釋例1.3使用printf()與%f輸出浮點(diǎn)數(shù)。#include<stdio.h>intmain(){floatf;//聲明浮點(diǎn)數(shù)變量printf("輸入一個(gè)浮點(diǎn)數(shù):");scanf("%f",&f);//通過鍵盤給程序中的變量賦值//printf("輸入的浮點(diǎn)數(shù)為%f\n",f);return0;}1.5實(shí)踐環(huán)節(jié)解釋例1.4使用scanf()來接收輸入,printf()與%d格式化輸出整數(shù),實(shí)現(xiàn)兩數(shù)相加。#include<stdio.h>intmain(){intfirstNumber,secondNumber,sumOfTwoNumbers;printf("輸入兩個(gè)數(shù)(以空格分割):");scanf("%d%d",&firstNumber,&secondNumber);//通過scanf()函數(shù)接收用戶輸入的兩個(gè)整數(shù)sumOfTwoNumbers=firstNumber+secondNumber;printf("%d+%d=%d\n",firstNumber,secondNumber,sumOfTwoNumbers);return0;}1.5實(shí)踐環(huán)節(jié)解釋例1.5輸入兩個(gè)浮點(diǎn)數(shù),計(jì)算乘積。#include<stdio.h>intmain(){doublefirstNumber,secondNumber,product;printf("輸入兩個(gè)浮點(diǎn)數(shù):");scanf("%lf%lf",&firstNumber,&secondNumber);product=firstNumber*secondNumber;printf("%lf*%lf=%.2lf\n",firstNumber,secondNumber,product);//輸出結(jié)果,%.2lf保留兩個(gè)小數(shù)點(diǎn)return0;}1.5實(shí)踐環(huán)節(jié)解釋例1.6兩數(shù)相除,如果有余數(shù),輸出余數(shù)。#include<stdio.h>intmain(){intdividend,divisor,quotient,remainder;//4個(gè)變量是被除數(shù)、除數(shù)、商和余數(shù)//printf("輸入被除數(shù):");scanf("%d",÷nd);printf("輸入除數(shù):");scanf("%d",&divisor);quotient=dividend/divisor;//運(yùn)算符/用來計(jì)算商//remainder=dividend%divisor;//運(yùn)算符%用來計(jì)算余數(shù)//printf("商=%d\n",quotient);printf("余數(shù)=%d\n",remainder);return0;}1.5實(shí)踐環(huán)節(jié)解釋例1.7輸入兩個(gè)數(shù),比較大小#include<stdio.h>intmain(){doublea,b;printf("輸入第一個(gè)數(shù):");scanf("%le",&a);printf("輸入第二個(gè)數(shù):");scanf("%le",&b);if(a>b)printf("%le大于%le\n",a,b);elseprintf("%le小于等于%le\n",a,b);return0;}1.5實(shí)踐環(huán)節(jié)解釋例1.8比較三個(gè)數(shù)大小#include<stdio.h>intmain(){inta,b,c;printf("輸入第一個(gè)整數(shù):");scanf("%d",&a);printf("輸入第二個(gè)整數(shù):");scanf("%d",&b);printf("輸入第三個(gè)整數(shù):");scanf("%d",&c);if(a>b&&a>c)printf("%d最大\n",a);elseif(b>a&&b>c)printf("%d最大\n",b);elseif(c>a&&c>b)printf("%d最大\n",c);elsepr
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 幼兒園緊急保安招聘合同
- 貨車環(huán)境衛(wèi)生合同
- 飼料配送貨車司機(jī)聘用合同
- 設(shè)備租賃協(xié)議書范本
- 耕地?zé)o償耕種協(xié)議書
- 瓦工勞務(wù)合同書樣本
- 公共建筑光伏 框架合作協(xié)議書
- 集體林權(quán)承包合同范本
- 黃河干流供水合同范例
- 第三單元(整體教學(xué)設(shè)計(jì))七年級語文上冊大單元教學(xué)名師備課系列(統(tǒng)編版2024)
- 魯教版五四制初中八年級化學(xué)全一冊全套教案
- 2024年煙草知識考試題庫
- 餐飲服務(wù)電子教案 學(xué)習(xí)任務(wù)4 雞尾酒調(diào)制
- 【大單元整體教學(xué)】教科版科學(xué)五年級上冊-第一單元《光》第1課有關(guān)光的思考-單元整體分析+課時(shí)公開課一
- 2024年黑龍江省龍東地區(qū)中考數(shù)學(xué)試題含答案
- 劉潤年度演講2024
- 小學(xué)生講海軍司令肖勁光的紅色故事肖勁光先進(jìn)事跡學(xué)習(xí)
- 養(yǎng)老院的經(jīng)營規(guī)劃方案
- TSG51-2023起重機(jī)械安全技術(shù)規(guī)程
- 人教版英語初二上學(xué)期試題及答案指導(dǎo)(2024年)
評論
0/150
提交評論