版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
01第一章-c概述1-0.概述計(jì)算機(jī)計(jì)算機(jī)是一種具有內(nèi)部存儲能力的自動、高效的電子設(shè)備能高速、精確、自動處理信息的現(xiàn)代化電子設(shè)備1-0.概述計(jì)算機(jī)計(jì)算機(jī)接受和處理的對象是信息,處理的結(jié)果也是信息信息是能夠被人類(或儀器)接受、以聲音、圖形/圖像、文字、視頻等形式表現(xiàn)出來的一切可以傳遞的知識內(nèi)容1-0.概述計(jì)算機(jī)數(shù)據(jù)外在表現(xiàn)形式數(shù)值文本圖像/圖形聲音......數(shù)據(jù)內(nèi)部表現(xiàn)形式統(tǒng)一的二進(jìn)制數(shù)特定的計(jì)算機(jī)程序1-0.概述計(jì)算機(jī)怎樣工作?馮·諾依曼體系結(jié)構(gòu)執(zhí)行存放在計(jì)算機(jī)的內(nèi)部存儲器中的指令1-1.程序和程序設(shè)計(jì)語言指令指令是計(jì)算機(jī)執(zhí)行某種操作的命令每條指令可完成一個(gè)獨(dú)立的操作采用硬件能理解并能執(zhí)行的語言1-1.程序和程序設(shè)計(jì)語言程序指令序列集合是為實(shí)現(xiàn)特定目標(biāo)或解決特定問題而用計(jì)算機(jī)語言編寫的、可以連續(xù)執(zhí)行并能夠完成一定任務(wù)的指令序列的集合1-1.程序和程序設(shè)計(jì)語言軟件由程序和有關(guān)程序的技術(shù)文檔資料組成軟件系統(tǒng)系統(tǒng)軟件應(yīng)用軟件1-1.程序和程序設(shè)計(jì)語言程序設(shè)計(jì)語言必須由某種程序設(shè)計(jì)語言描述是與計(jì)算機(jī)交流的工具1-1.程序和程序設(shè)計(jì)語言程序設(shè)計(jì)語言的發(fā)展MachineLanguagesAssemblyLanguagesHigh-LevelLanguages+1300042774+1400593419+1200274027LOADAADDBSTORECC=A+B1-1.程序和程序設(shè)計(jì)語言高級語言特點(diǎn)簡潔性可移植性易讀性1-1.程序和程序設(shè)計(jì)語言高級語言翻譯程序的方式解釋方式編譯方式1-1.程序和程序設(shè)計(jì)語言常見的高級語言過程化的高級語言BASIC(Beginner’sallPurposeSymbolicInstructionCode)PASCAL
C
FORTRAN
1-1.程序和程序設(shè)計(jì)語言常見的高級語言面向?qū)ο笳Z言與可視化編程環(huán)境(非過程化語言)如Visual系列(VC++、VB等)PowerBuilderDelphiJava等1-1.程序和程序設(shè)計(jì)語言程序設(shè)計(jì)計(jì)算機(jī)編程程序設(shè)計(jì)中需要設(shè)計(jì)語言和開發(fā)環(huán)境程序設(shè)計(jì)需要遵循一定的方法和原則1-1.程序和程序設(shè)計(jì)語言程序設(shè)計(jì)過程確定數(shù)學(xué)模型(或數(shù)據(jù)結(jié)構(gòu))明確問題要求、分析問題、設(shè)計(jì)解決問題方法算法描述算法可以采用自然語言方式、程序流程圖或其他直觀方式1-1.程序和程序設(shè)計(jì)語言程序設(shè)計(jì)過程編寫程序使用某種程序設(shè)計(jì)語言,將設(shè)計(jì)好的算法表達(dá)出來程序測試經(jīng)過科學(xué)的、嚴(yán)格的測試,最大限度地保證程序的正確性1-1.程序和程序設(shè)計(jì)語言程序設(shè)計(jì)過程例1-1:已知圓半徑和高,計(jì)算圓柱體的體積設(shè)計(jì)過程數(shù)學(xué)模型v=3.14*r*r*h算法描述編寫程序測試聲明變量v,h,r;輸入數(shù)據(jù):r=3.0,h=5.0;計(jì)算體積v=3.148*r*r*h;輸出v值1-2.算法(Algorithm)算法概念算法是為了解決一個(gè)特定的問題而采取的確定的、有限的、按照一定次序進(jìn)行的、缺一不可的執(zhí)行步驟計(jì)算機(jī)算法分類數(shù)值運(yùn)算算法非數(shù)值運(yùn)算算法1-2.算法算法設(shè)計(jì)算法是程序設(shè)計(jì)最關(guān)鍵的問題因?yàn)樗苯雨P(guān)系到編寫出來的程序質(zhì)量與之相對應(yīng)的具體語言(例如C語言)則是一個(gè)工具,是算法的一個(gè)具體實(shí)現(xiàn)設(shè)計(jì)算法的過程是從具體到抽象的過程1-2.算法算法描述工具偽代碼流程圖N/S圖UML......1-2.算法偽代碼(Pseudocode)例1-2:猴子吃桃問題有一堆桃子不知數(shù)目,猴子第一天吃掉一半并多吃了一個(gè),第二天照此方法,吃掉剩下桃子的一半加一個(gè),天天如此,到第十天早上,猴子發(fā)現(xiàn)只剩一只桃子了,問這堆桃子原來有多少個(gè)?數(shù)學(xué)模型:ai=2*(ai+1+1)i=9,8,7,…1;算法描述:(1)a1=1/*第10天的桃子數(shù),A1的初始值*/
i=9/*計(jì)數(shù)器的初值為9*/(2)a0=2*(a1+1)/*計(jì)算當(dāng)天的桃子數(shù)*/(3)a1=a0;/*將當(dāng)天的桃子數(shù)作為下一次計(jì)算的初值*/(4)i=i-1;(5)若i>=1,繼續(xù)循環(huán)執(zhí)行(2);(6)輸出A0的值;
其中(2)~(5)反復(fù)執(zhí)行,直到條件不滿足(i<1)為止。1-2.算法偽代碼(Pseudocode)例1-3:輸入三個(gè)數(shù),輸出其中最大的數(shù)算法描述:算法描述:(1)輸入A,B,C;(2)若A>B,則A->MAX;若A<B,則B->MAX。(3)若C>MAX,則C->MAX。(4)輸出MAX,MAX既是最大數(shù)。1-2.算法流程圖例1-4:輸出全班(30名)及格學(xué)生的成績算法描述1-2.算法N-S圖1973年,Nassi和Shneiderman提出例1-5:輸入兩個(gè)數(shù),輸出其中較小的數(shù)1-2.算法算法特性有窮性唯一性正確性有零個(gè)或多個(gè)輸入有一個(gè)或多個(gè)輸出1-2.算法算法的復(fù)雜性算法的復(fù)雜性是算法效率的度量,是評價(jià)算法優(yōu)劣的重要依據(jù)時(shí)間效率和空間效率1-3.C語言概述C語言發(fā)展歷程C語言的設(shè)計(jì)者DennisM.Ritchie貝爾實(shí)驗(yàn)室于20世紀(jì)70年代初期研制Thompson用匯編語言編寫PDP-7操作系統(tǒng)UNIXBCPL語言基礎(chǔ)上的B語言DennisRitchie把B改造成C,并始用C重寫UNIX1-3.C語言概述C語言標(biāo)準(zhǔn)1978年,《TheCProgrammingLanguage》,標(biāo)準(zhǔn)c語言1983年,標(biāo)準(zhǔn)ANSIc1987年,87ANSIC1990年,ISOC的標(biāo)準(zhǔn)1-3.C語言概述C語言特點(diǎn)適合開發(fā)系統(tǒng)軟件結(jié)構(gòu)化的程序設(shè)計(jì)語言面向?qū)ο蟪绦蛟O(shè)計(jì)的基礎(chǔ)C語言被分類為高級語言目前主要應(yīng)用在嵌入式領(lǐng)域和系統(tǒng)級編程1-3.C語言概述C程序結(jié)構(gòu)例1-6:分析一個(gè)經(jīng)典的C程序。#include<stdio.h>main(void){
printf(“Hello!CProgramming\n”);}運(yùn)行后在屏幕上輸出: Hello!CProgramming//#include是C語言預(yù)處理程序的一條指令//main是C程序的主函數(shù)名1-3.C語言概述C程序結(jié)構(gòu)例1-8:分析一個(gè)利用函數(shù)調(diào)用方式實(shí)現(xiàn)加法運(yùn)算的程序。#include<stdio.h>main()/*主函數(shù)*/{
inta,b,sum=0;/*定義變量并賦初值*/
scanf(“%d%d”,&a,&b);
sum=add(a,b);/*調(diào)用函數(shù)add,將得到的值賦給sum*/
printf(“%d,%d,sum=%d\n”,a,b,sum);
}
/*計(jì)算兩數(shù)相加的函數(shù)*/intadd(intx,inty)/*定義add函數(shù),add函數(shù)值為int型*/
{intz;
z=x+y;/*計(jì)算x+y的結(jié)果賦值給z*/
return(z);/*從add函數(shù)返回調(diào)用處;z為返回的函數(shù)值*/
}1-3.C語言概述C程序結(jié)構(gòu)格式特點(diǎn)C語言嚴(yán)格區(qū)分大、小寫英文字母C語言程序是由一個(gè)個(gè)的語句組成用大括號對“{}”表示程序的結(jié)構(gòu)層次范圍C語言程序可以使用注釋1-3.C語言概述C程序結(jié)構(gòu)一個(gè)C程序可以由一/多個(gè)源程序文件文件組成
C程序源程序文件1源程序文件i源程序文件n預(yù)編譯命令函數(shù)1函數(shù)n函數(shù)體函數(shù)首部1-3.C語言概述C程序結(jié)構(gòu)函數(shù)的結(jié)構(gòu)C源程序文件結(jié)構(gòu)intmain(){
inta=1,b=5,c;
c=a+b;
printf(“c=%d\n”,c);}#include<stdio.h>main(){inta=1,b=5,c;c=add(a,b);printf(“c=%d\n”,c);}intadd(intx,inty){return(x+y);}1-3.C語言概述C程序的編輯、編譯和運(yùn)行源程序編譯目標(biāo)代碼1-3.C語言概述集成開發(fā)環(huán)境(IDE)包括簡單的文字編輯器編
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度心理咨詢師個(gè)人雇傭服務(wù)合同2篇
- 二零二五年度綠色校園物業(yè)服務(wù)規(guī)范合同2篇
- 二零二五年度汽車銷售售后服務(wù)保障合同模板2篇
- 2025版金融產(chǎn)品銷售委托代理服務(wù)協(xié)議3篇
- 二零二五年度大蒜產(chǎn)業(yè)扶貧項(xiàng)目合作協(xié)議3篇
- 個(gè)人咨詢勞務(wù)合同書
- 第三方履約擔(dān)保協(xié)議范本
- 2025版鐵路工程建設(shè)合同范本(爭議解決)3篇
- 二零二五年度建筑工程施工勞務(wù)分包合同環(huán)保責(zé)任3篇
- 技術(shù)創(chuàng)新及知識產(chǎn)權(quán)保護(hù)合作協(xié)議
- 2024年鄉(xiāng)村振興(產(chǎn)業(yè)、文化、生態(tài))等實(shí)施戰(zhàn)略知識考試題庫與答案
- 現(xiàn)代科學(xué)技術(shù)概論智慧樹知到期末考試答案章節(jié)答案2024年成都師范學(xué)院
- 軟件模塊化設(shè)計(jì)與開發(fā)標(biāo)準(zhǔn)與規(guī)范
- 網(wǎng)絡(luò)安全基礎(chǔ)知識入門教程
- AI智慧物流園區(qū)整體建設(shè)方案
- 2024年遼寧鐵道職業(yè)技術(shù)學(xué)院高職單招(英語/數(shù)學(xué)/語文)筆試歷年參考題庫含答案解析
- 無痛人工流產(chǎn)術(shù)課件
- 有機(jī)農(nóng)業(yè)種植模式
- 勞務(wù)派遣招標(biāo)文件
- 法醫(yī)病理學(xué)課件
- 采空區(qū)穩(wěn)定性可靠度分析
評論
0/150
提交評論