




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
平臺安裝一個免費專用的學習軟件小熊貓Dev-Cpp(32位版)01文件目錄先建文件夾Dev-Cpp,把解壓后的所有文件全部放在該文件夾中/devcpp/download
下載綠色版直接解壓雙擊devcpp.exe新建文件先建一個C語言程序文件test.c在菜單欄“文件”下選“新建”再選“源代碼”會出現(xiàn)未命名文件在菜單欄“文件”下選“另存為”后出現(xiàn)對話框,選擇存儲目錄,并為文件命名為test.c,確認后界面的文件名改為test.c輸入測試程序代碼運行程序編譯和鏈接生成可執(zhí)行文件程序使用的是文本(字母與數(shù)字)用編譯器和鏈接器生成計算機認識的機器指令編譯鏈接在菜單欄“運行”中選“編譯”或直接點擊圖標
或按F9鍵若源代碼沒有錯誤,則可生成可執(zhí)行文件,否則會報告錯誤。運行在菜單欄“運行”中選“運行”或直接點擊圖標
或按F10鍵程序運行,在控制臺窗口顯示“您好!HelloWorld!”,再按任一鍵程序結(jié)束變量賦值計算機用來幫助人類處理信息,實質(zhì)是進行數(shù)據(jù)運算。運算量需要保存且還要賦值。02變量定義最簡單運算是1+1=2最簡單的問題是1+1=?小學生:2中學生:設(shè)和為s,根據(jù)題意可得s=1+1=2。將數(shù)用字母表示,建立了“和=加數(shù)+加數(shù)“的關(guān)系式將每個量表示出來兩個加數(shù)為1,他們本身就是值,直接使用和需要一個符號來表示,故用字母s代替兩個加數(shù)的值直接給出,和的值是計算獲得的,需要保存操作加運算完成后把計算結(jié)果賦給s對需要保存的量分配一個空間命名且指明類型(表明空間的大小)需要分配空間的量稱為變量值是可更改的量使用變量必須先定義如同數(shù)學中的要用一個字母作為未知數(shù)或變量時需要假設(shè)一樣變量范圍char型(字符型)unsignedchar型稱為無符號字符型short型稱為短整型 unsignedshort型稱為無符號短整型long型稱為長整型 unsignedlong型稱為無符號長整型int型稱為整型 unsignedint型稱為無符號整型float型稱為單精度浮點型 double型稱為雙精度實型。
類型值范圍類型值范圍整數(shù)char-128~127unsignedchar0-255short-32768~+32767unsignedshort0~65535long-32768~32767unsignedlong0~4294967295int-32768~32767unsignedint0~4294967295實數(shù)float-3.4×10-38~3.4×1038double-1.7×10-308~1.7×10308編程實現(xiàn)先定義一下和變量s只計算1+1,s取char型chars;規(guī)定每條語句用“;”來表示結(jié)束。求和,就是將運算結(jié)果賦給和變量,寫做s=1+1賦值操作用“=”,把右邊表達式的值賦給左邊的變量相等比較操作用“==”,兩邊的表達式值進行比較必須有一個主程序main主程序中放置具體操作程序代碼結(jié)束時采用返回整型值語句一定要有返回值,否則會報錯在語句后面加點注釋用“//”分隔運行調(diào)試要用調(diào)試工具來測試一下代碼運行是否正確在菜單欄“運行”中選“調(diào)試”或直接點擊圖標
或按F5鍵,進入調(diào)試界面標號前面的箭頭表示當前要執(zhí)行的語句當前要執(zhí)行語句為s=1+1監(jiān)視欄加入s觀察其值的變化在菜單欄“運行”中選“添加監(jiān)視”,或直接點擊圖標鍵入s后確認,在左側(cè)的豎欄中出現(xiàn)s的當前值點擊圖標
(單步進入)或按F8鍵箭頭下移一行監(jiān)視欄的s值變?yōu)?點擊圖標
(單步進入)或按F6鍵結(jié)束調(diào)試常用算術(shù)運算+(加)-(減)*(乘)/(除)兩個都是整數(shù)時是整除%(求余)整除求余,只能是兩個整數(shù)使用所有數(shù)學表達式中的“{、[、(”都用“(”代替,“}、]、)”都用“)”代替算術(shù)表達式中不允許出現(xiàn)“{、}、[、]”。{[(2+3)×2+2]÷4+2}×3
(((2+3)*2+2)/4+2)*3習題編程實現(xiàn)以下算術(shù)題采用數(shù)值表達式5-4=?1.1×2=?-120×100=?100÷8=?((4+8)÷3+1)×2.5=?類型的選取根據(jù)實際運算選取合適的類型才能保證運算不出錯03變量表達最簡單的問題是1+1=?假設(shè)兩數(shù)分別為x和y,其和為s,即s=x+y。求當x=1、y=1時s的值。答:s=x+y=1+1=2程序代碼:charx,y;chars;intmain(){ x=1; y=1; s=x+y; return0;}變量范圍100+50=?charx,y;chars;intmain(){ x=100; y=50; s=x+y; return0;}每個變量都是有大小約束的,不能超過限制。char型變量值的范圍是-128~127x和y在范圍之內(nèi)s最大只能到127,保存值150一定出錯變量范圍100+50=?s定義為unsignedchar型僅此例,不通用s定義為short型習題編程實現(xiàn)以下算術(shù)題采用變量表達式5-4=?1.1×2=?-120×100=?100÷8=?((4+8)÷3+1)×2.5=?函數(shù)函數(shù)是程序設(shè)計最為常用的模塊化編程方法。04數(shù)學轉(zhuǎn)化最簡單的問題是1+1=?已知函數(shù)f(x,y)=x+y,求f(1,1)的值。解:f(1,1)=1+1=2f(x,y)的程序shortf(charx,chary){ returnx+y;}函數(shù)一個多輸入(自變量)一個輸出(因變量)的處理功能模塊f是功能模塊名,即函數(shù)名功能語句稱為函數(shù)體以“{”開啟、以“}“結(jié)束x和y是局部變量(自變量),保存輸入的數(shù)值因變量的值是f(x,y)的輸出采用return語句實現(xiàn)值的輸出,因變量的值就是返回值函數(shù)調(diào)用調(diào)用在一個函數(shù)體內(nèi)使用另一個函數(shù)子函數(shù)被調(diào)用的函數(shù)相對調(diào)用者調(diào)試函數(shù)外部無法監(jiān)視到局部變量進入函數(shù)體可看到局部變量和全局變量凡是在函數(shù)外部定義的變量,稱為全局變量。在函數(shù)體外和體內(nèi)都可以使用;函數(shù)定義及函數(shù)體內(nèi)定義的變量只能在函數(shù)體內(nèi)使用,稱為局部變量。局部變量在使用函數(shù)時有效,在函數(shù)結(jié)束后無效。習題編程實現(xiàn)以下算術(shù)題采用函數(shù)調(diào)用5-4=?1.1×2=?-120×100=?100÷8=?((4+8)÷3+1)×2.5=?變量作用域值是1并不代表只能為1。我是我,今天的我就是今天的我,絕對不是明天的我,不要用今天的我來定義我。05同名變量shortf(charx,chary){ returnx+y;}charx,y;shorts;intmain(){ x=1; y=1; s=f(x,y); return0;}x和y是哪個x和y?同名變量shortf(charx,chary){ returnx+y;}charx,y;shorts;intmain(){ x=1; y=2; s=f(y,x); return0;}同名不同姓在函數(shù)體內(nèi),相同名稱的全局變量和局部變量,該變量只能是局部變量。調(diào)用過程把全局變量y的值2傳給函數(shù)局部變量x局部變量x值為2把全局變量x的值1傳給函數(shù)局部變量y局部變量y值為1局部變量函數(shù)名的局部變量每個局部變量是在函數(shù)調(diào)用時才生成的每次調(diào)用生成的變量名字是相同的,但分配的空間可不一定在同一個地方全局變量與局部變量重名,實質(zhì)是兩個不同的變量全局變量局部變量f的x、f的y習題利用函數(shù)編程并調(diào)試分析令f(x,y)=x+y,g(x,y)=x×y,h(x,y)=g(x,y)÷f(x,y)。編程求解當x=4,y=6時h(x,y)的值。分支結(jié)構(gòu)人們有時總要在兩件事情上做選擇,“如果(條件關(guān)系)成立,那么(做這件事),反之(做那件事)”06語句描述兩支體if(條件關(guān)系)//如果條件關(guān)系成立,那么{
做這件事;}else//反之(條件關(guān)系不成立){
做那件事;}單支體if(條件關(guān)系)//如果條件關(guān)系成立,那么{
做這件事;}示例:求絕對值習題
循環(huán)結(jié)構(gòu)重復著,一個簡單的操作,盡管每次對象不同,。。。。。。071+2+…+10=?不斷用以前求得的和值與當前數(shù)值相加的結(jié)果更新和值s保存和s=s+n,先把s值取出來,與n相加,所得的和值再保存至s中變量的值在賦值前后有可能不同的s=0
s=s+1
s=s+2
s=s+3
……
s=s+9
s=s+10序號n前面數(shù)的總和0+…+(n-1)加當前數(shù)n等于當前數(shù)及以前的數(shù)總和0+…+n10+1=121+2=333+3=6??????936+9=451045+10=55操作序號操作執(zhí)行1s=02n=13若n<=10則執(zhí)行4,否則結(jié)束4s=s+n5n=n+16執(zhí)行3循環(huán)執(zhí)行過程1
2
3
4
5
6
3
4
…
6
3有一個循環(huán)操作反復執(zhí)行的3
4
5
6
當循環(huán)條件成立時執(zhí)行一些操作循環(huán)體循環(huán)條件當型循環(huán)語句while(條件關(guān)系){ //循環(huán)體}操作序號操作執(zhí)行1s=02n=13若n<=10則執(zhí)行4,否則結(jié)束4s=s+n5n=n+16執(zhí)行3如果條件關(guān)系成立,那么執(zhí)行循環(huán)體,反之執(zhí)行循環(huán)體后續(xù)語句當型循環(huán)1+2+……+10=?的程序計數(shù)型循環(huán)采用計數(shù)量確定循環(huán)次數(shù)執(zhí)行前對計數(shù)量賦初值每次執(zhí)行循環(huán)體前檢測計數(shù)量是否達到規(guī)定數(shù)值每次執(zhí)行完循環(huán)體后計數(shù)量更新for(<計數(shù)量)=<初值>;<執(zhí)行循環(huán)體的關(guān)系>;<循環(huán)量更新表達式>){//循環(huán)體;}s=s+n
s+=nn=n+1
n+=1、n++、++nn++表示先取n值使用,語句執(zhí)行完后再將n增1 ++n表示執(zhí)行語句之前先將n增1,再取n值使用習題
迭代與遞歸從前有個山,山里有個廟,廟里有個老和尚給小和尚講故事:“從前有個山,山里有個廟,廟里有個老和尚給小和尚講故事:“從前有個山,山里有個廟,廟里有個老和尚給小和尚講故事:。。。。。。08迭代
遞歸
函數(shù)每調(diào)用一次,計算機會自動分配一次局部變量,所以函數(shù)反復調(diào)用,其局部變量位置是不同的習題
結(jié)構(gòu)體與數(shù)組我的房子是三室一廳,你的房子是復式七室二廳,。。。他有五套房子。。。。09結(jié)構(gòu)體變量集合structure名世經(jīng)典房型{
主臥;客臥;書房;主衛(wèi);客衛(wèi);餐廳;客廳;廚房;儲物間;洗衣間;陽臺;}變量:我的房子
類型:名世經(jīng)典房型struct名世經(jīng)典房型我的房子;我的房子中的主臥是一個變量,直接寫成:我的房子.主臥定義一個結(jié)構(gòu)體變量,實質(zhì)是定義了和結(jié)構(gòu)體所包括的量一樣多的變量。結(jié)構(gòu)體
數(shù)組多個相同類型變量分組定義把N個共同類型的變量定義成數(shù)組
類型變量名[數(shù)量];其中之一的變量變量名[序號]序號從0開始,最大值為數(shù)量-15個點定義一個新的類型POStypedefstructposPOS;POSp[5];structposp[5];習題
地址與指針每個變量都有自己的存儲空間,如同房子一樣,存儲空間都有唯一地址。10地址與指針變量的地址,也稱為指針對于單變量,采用&來取該變量地址ints;&s對于數(shù)組,變量名就是地址intx[5];x指針變量保存地址值的變量
類型*變量名;示例long*pa;short*pb;char*pc;指針變量實質(zhì)是指向某變量的空間,因此指針變量在使用之前必須賦合理的數(shù)值,否則程序會出現(xiàn)異?;蝈e誤。inta;int*p;p=&a;//把整型變量a的地址值保存在p中p=(int*)1236;//把1236作為整型變量的地址保存在p中當對指針變量所指的變量賦值時,采用*來賦值。*p=1236;如果向地址為1236的整型變量賦值1236,那么可以寫成以下語句:*((int*)1236)=1236;指針對于結(jié)構(gòu)體指針,采用“->”來連接其結(jié)構(gòu)體所含的變量。structposp0,*p;p=&p0;p->x=1;//也可以寫為(*p).x,相當于p0.xp->y=1;//也可以寫為(*p).y,相當于p0.y習題編程調(diào)試實現(xiàn)將整型變量x的地址保存在指針變量y中。將整型指針變量y的地址保存在指針變量z中。通過調(diào)試獲取變量a,b,c,d,e,f的地址,并分析值間的關(guān)系,給出原因。longa,b;shortc,d;chare,f;通過調(diào)試獲取變量a,b,c,d,e的地址,并分析值間的關(guān)系,給出原因。chara,b,c;shortd;longe;分析下面語句的功能*(long*)0x12345678=0x12345678;常用雜項11變量和函數(shù)的聲明變量/函數(shù)在使用前都要聲明。如果變量/函數(shù)的定義在使用之前,那么聲明可以忽略,反之需要在使用它們的函數(shù)定義之前聲明一下。使用其它文件定義的某變量或函數(shù),需要采用extern來聲明該變量或函數(shù)。extern類型變量/函數(shù)名(變量列表);某個變量或函數(shù)不允許被其它文件使用,需要采用static來定義該變量。static類型變量/函數(shù)名(變量列表);intf(intx);inta;intmain(){ a=f(1); return0;}intf(intx){ return-x;}定義標識符采用#define來定義標識符它不是語句,只是用于編譯程序代碼文本時替代使用。#defineID123//程序中的ID都代表
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2020-2021深圳寶安區(qū)展華實驗學校小學三年級數(shù)學下期末第一次模擬試題(含答案)
- 2020-2021北京第一零五中學小學三年級數(shù)學下期末一模試題(及答案)
- 單軌空中列車施工方案
- 2025年新高考地理全真模擬試卷 5套(含答案解析)
- 2024年河南省中考滿分作文《不畏困難勇攀高峰》
- 專題01 地球和地圖-2025年中考地理一輪復習知識清單(背誦版)
- 個人購買柴油合同范例
- 財務(wù)業(yè)務(wù)合規(guī)程序計劃
- 手工制作社團活動計劃
- 學習困難學生幫扶方案計劃
- 高一至高二年級 花城版 舞蹈表演 第一單元《維吾爾族舞蹈》課件
- 人教版小學三年級數(shù)學下冊《復式統(tǒng)計表》名師公開課獲獎?wù)n件百校聯(lián)賽一等獎?wù)n件
- 心衰護理課件教學課件
- 基于人工智能的供應(yīng)鏈協(xié)同優(yōu)化平臺建設(shè)方案
- 《大學語文》普通高等院校語文課程完整全套教學課件
- 預(yù)防校園欺凌主題班會課件(共36張課件)
- 伸縮臂式22m高空作業(yè)車安全操作規(guī)程
- 全國國家版圖知識競賽題庫及答案(中小學組)
- 顧客滿意度調(diào)查分析報告表
- 《托育服務(wù)政策法規(guī)與職業(yè)倫理》全套教學課件
- 湖北省武漢市實驗外國語學校小學部小學六年級小升初期末語文試題(含答案)
評論
0/150
提交評論