版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
單元程序設(shè)計(jì)基礎(chǔ)知識(shí)主要內(nèi)容2.1數(shù)據(jù)表示2.1.1數(shù)據(jù)類型〔難點(diǎn)〕2.1.2常量〔重點(diǎn)〕2.1.3變量〔重點(diǎn)〕2.2數(shù)據(jù)操作2.2.1運(yùn)算符與表達(dá)式〔重點(diǎn)難點(diǎn)〕2.2.2類型轉(zhuǎn)換〔難點(diǎn)〕2.3算法與三種根本程序構(gòu)造2.3.2三種根本程序構(gòu)造〔重點(diǎn)難點(diǎn)〕程序設(shè)計(jì)根底問(wèn)題引入通過(guò)編程解決問(wèn)題,其本質(zhì)是對(duì)數(shù)據(jù)的操作,這些數(shù)據(jù)可能是數(shù)學(xué)問(wèn)題中的數(shù)值〔整數(shù)或小數(shù)〕,可能是信息處理中的文字〔字符或字符串〕,也可能是更復(fù)雜的數(shù)據(jù)或文件那么在C語(yǔ)言中如何表示這些數(shù)據(jù)?如何對(duì)數(shù)據(jù)間的運(yùn)算進(jìn)展描述?【引例】根據(jù)三角形的三個(gè)邊長(zhǎng),計(jì)算三角形的面積,其計(jì)算公式為:area=〔其中a、b、c為三角形的三個(gè)邊長(zhǎng),s=(a+b+c)/2〕試分析:在這個(gè)問(wèn)題中涉及哪些數(shù)據(jù):;其中量有:;未知量有:。abc2.1數(shù)據(jù)表示
2.1.1數(shù)據(jù)類型2.1.2常量
2.1.3變量
2.1.1數(shù)據(jù)類型2.1數(shù)據(jù)表示計(jì)算機(jī)處理數(shù)據(jù)信息時(shí),需要明確數(shù)據(jù)到底是什么類型,以便分配適宜的存儲(chǔ)空間,并按照相應(yīng)的規(guī)那么進(jìn)展操作。所以在程序編寫時(shí)要對(duì)數(shù)據(jù)進(jìn)展明確的類型說(shuō)明。2.1.1數(shù)據(jù)類型2.1數(shù)據(jù)表示程序演示
運(yùn)行結(jié)果:【例2-1】計(jì)算并輸出半徑為r的圓的面積。#include<stdio.h> //包含標(biāo)準(zhǔn)輸入輸出頭文件voidmain() //主函數(shù){
floatr,area;//數(shù)據(jù)準(zhǔn)備,定義半徑r和面積areaprintf("請(qǐng)輸入半徑:");//提示語(yǔ)scanf("%f",&r); //輸入半徑值rarea=*r*r; //數(shù)據(jù)計(jì)算,將結(jié)果賦值給area
printf("該圓的面積為:%f.\n",area);//輸出面積值}數(shù)據(jù)類型:r,area為float〔實(shí)型〕變量:r,area常量3.14〔π〕根本數(shù)據(jù)類型有三種:整型(int)字符型(char)實(shí)型單精度型〔float〕雙精度型double)2.1.1數(shù)據(jù)類型2.1數(shù)據(jù)表示1.整型2.1.1數(shù)據(jù)類型2.1數(shù)據(jù)表示名稱符號(hào)存儲(chǔ)空間數(shù)的范圍短整型short2字節(jié)(16位)-32768~+32767(-215~+215-1)基本整型int2字節(jié)(16位)-32768~+32767(-215~+215-1)4字節(jié)(32位)-2147483648~+2147483647(-231~+231-1)長(zhǎng)整型long4字節(jié)(32位)-2147483648~+2147483647(-231~+231-1)無(wú)符號(hào)短整型unsignedshort2字節(jié)(16位)0~65535(0~216-1)無(wú)符號(hào)基本整型unsignedint2字節(jié)(16位)0~65535(0~216-1)4字節(jié)(32位)0~4294967295(0~232-1)無(wú)符號(hào)長(zhǎng)整型unsignedlong4字節(jié)(32位)0~4294967295(0~232-1)2.浮點(diǎn)型
浮點(diǎn)型又分為單精度和雙精度。其符號(hào)表示、所占存儲(chǔ)空間大小、有效數(shù)字及數(shù)的范圍如表。
2.1.1數(shù)據(jù)類型2.1數(shù)據(jù)表示名稱符號(hào)存儲(chǔ)空間有效數(shù)字?jǐn)?shù)的絕對(duì)值范圍單精度浮點(diǎn)型float4字節(jié)(32位)6~73.4×10-38~3.4×1038雙精度浮點(diǎn)型double8字節(jié)(64位)15~161.7×10-308~1.7×10308程序的構(gòu)造特點(diǎn)字符型數(shù)據(jù)涵蓋了ASCII碼字符集中每一個(gè)字符,包括可直接顯示的字符和32個(gè)控制字符,見(jiàn)附錄A。字符型用char表示,占存儲(chǔ)空間1個(gè)字節(jié)〔8位〕,實(shí)際上存放的是該字符所對(duì)應(yīng)的ASCII碼值〔一個(gè)整數(shù)〕,所以字符型和整型的關(guān)系非常特殊,二者經(jīng)?!盎齑瞑?,如’A’+1代表字母’B’。2.1.1數(shù)據(jù)類型2.1數(shù)據(jù)表示2.1.2常量2.1數(shù)據(jù)表示常量按照數(shù)據(jù)類型來(lái)分有:整型常量浮點(diǎn)型常量字符常量字符串常量按照表現(xiàn)形式來(lái)分有:直接常量符號(hào)常量1.直接常量(1)整型常量整型常量有十進(jìn)制、八進(jìn)制和十六進(jìn)制三種表示方式,如表2-3所示。
2.1.2常量2.1數(shù)據(jù)表示表示方式前置符號(hào)標(biāo)志構(gòu)成示例十進(jìn)制無(wú)0~9、正負(fù)號(hào)65,-57八進(jìn)制00~7、正負(fù)號(hào)032,027,-033十六進(jìn)制0x或0X0~9,a~f(或A~F)、正負(fù)號(hào)0x101,0Xff整型常量默認(rèn)為根本整型,可以在整型常量后加小寫字母l或大寫字母L得到相應(yīng)的長(zhǎng)整型常量。例30000為int型65536為longint型例(1)20023L(2)06708302(3)0x200xfff0xh31.直接常量(2)浮點(diǎn)型常量浮點(diǎn)型常量有十進(jìn)制小數(shù)和指數(shù)形式兩種表示方式。
2.1.2常量2.1數(shù)據(jù)表示表示方式符號(hào)標(biāo)志構(gòu)成示例規(guī)則十進(jìn)制小數(shù)小數(shù)點(diǎn).0~9、正負(fù)號(hào)和小數(shù)點(diǎn)1.23,.23,-1.必須有唯一的小數(shù)點(diǎn)指數(shù)字母e或E0~9、正負(fù)號(hào)、e或E1.23e3,1.23E3字母e或E前必有數(shù),e或E后必為整數(shù)eEe2e3、、e是不合法的指數(shù)形式(3)字符型常量用單撇引號(hào)括起來(lái)的單一字符稱之為字符型常量。轉(zhuǎn)義字符表示時(shí)以反斜杠“\〞作為標(biāo)志符號(hào)。字符型常量在內(nèi)存中占1個(gè)字節(jié)。2.1.2常量2.1數(shù)據(jù)表示例如:1.'a','B','9','*'是合法的直接字符常量。2.單引號(hào)、雙引號(hào)和反斜杠等具有特殊用途的字符只能用轉(zhuǎn)義字符表示,即'\''、'\"'、'\\'。3.'\n','\030','\x19'是合法的轉(zhuǎn)義字符常量,分別代表回車換行、↑、和↓等控制字符。2.1.2常量2.1數(shù)據(jù)表示表示形式含義\n回車換行(將光標(biāo)移到下一行開頭)\t橫向跳格(Tab)\b退格(將光標(biāo)前移一列)\a警告(產(chǎn)生聲音提示信號(hào))\\輸出反斜杠\\’輸出單引號(hào)’\
"輸出雙引號(hào)”\dddddd為1至3為八進(jìn)制數(shù),如’\101’代表A,’\37’代表▼符號(hào)\xhhHh為1至2位十六進(jìn)制數(shù),如’\x1E’代表▲符號(hào)1.直接常量(3)字符型常量--常見(jiàn)的轉(zhuǎn)義字符及其含義如表2-5所示
2.1.2常量2.1數(shù)據(jù)表示1.直接常量(4)字符串常量字符串常量就是用雙撇引號(hào)括起來(lái)的一串字符序列,字符串中含有的字符個(gè)數(shù)是該字符串的長(zhǎng)度。字符串存儲(chǔ)時(shí),每個(gè)字符占1個(gè)字符,并在字符串的結(jié)尾自動(dòng)加上一個(gè)字符串完畢標(biāo)志’\0’,因此字符串的存儲(chǔ)長(zhǎng)度比字符串的字符個(gè)數(shù)多1。a
a\0例
‘a(chǎn)’“a”例空串“”\02.符號(hào)常量符號(hào)常量標(biāo)識(shí)符通常大寫,以便和其他標(biāo)識(shí)符相區(qū)別。另外,宏定義命令和頭文件包含命令一樣都屬于編譯預(yù)處理,需要寫在程序開頭位置。
2.1.2常量2.1數(shù)據(jù)表示#define符號(hào)常量標(biāo)識(shí)符常量值
#include<stdio.h> #definePI3.14//定義符號(hào)常量PI代表voidmain() {floatr,area; printf("請(qǐng)輸入半徑:");scanf("%f",&r); area=PI*r*r; printf("該圓的面積為:%f.\n",area);}2.1.2常量2.1數(shù)據(jù)表示【例2-4】使用符號(hào)常量實(shí)現(xiàn)【例2-1】——計(jì)算并輸出半徑為r的圓的面積。#define符號(hào)常量標(biāo)識(shí)符常量值【隨堂練習(xí)2-1】1.判斷以下常量表示正確與否?整型常量:32768、037、081、0x4f、0xAH字符型常量:'a'、'101'、65、'\x21'2.字符串常量“Howareyou?\n〞的字符串長(zhǎng)度為()個(gè)字節(jié),它占用的存儲(chǔ)空間為()個(gè)字節(jié)。3.“d:\windows\info.txt〞在C語(yǔ)言程序設(shè)計(jì)時(shí)應(yīng)描述為()。4.在編程處理物理力學(xué)相關(guān)運(yùn)算時(shí),常將重力加速度G定義為符號(hào)常量,其定義語(yǔ)句可描述為()。2.1.2常量2.1數(shù)據(jù)表示1.變量〔1〕概念:在程序運(yùn)行過(guò)程中其值可以改變的量稱為變量〔2〕變量定義的一般格式為:類型標(biāo)識(shí)符變量名1,變量名2,…,變量名n;2.1.3變量2.1數(shù)據(jù)表示注意:變量必須先定義,后使用。數(shù)據(jù)類型,即決定分配字節(jié)數(shù)和數(shù)的表示范圍合法標(biāo)識(shí)符例:inta,b,c;floatdata;例1intstudent;stadent=19;/*Undefinedsymbol‘statent’infunctionmain*/
1.變量〔3〕【例2-5】1).floatr,area;2).doublea,b,c;3).inti=1,s;4).longm,k;5).charch;
2.1.3變量2.1數(shù)據(jù)表示變量定義后,系統(tǒng)會(huì)根據(jù)變量的類型分配相應(yīng)的存儲(chǔ)空間。
注意區(qū)分變量名與變量值…...地址inta=1,b=-3,c;abc2字節(jié)2字節(jié)2字節(jié)地址地址…...內(nèi)存1-3隨機(jī)數(shù)1.變量〔4〕【隨堂練習(xí)2-2】1.以下變量定義中合法的是:〔1〕longdo=0xfd;〔2〕intmax=min=0;〔3〕doublef,inta;〔4〕charch="A";2.1.3變量2.1數(shù)據(jù)表示數(shù)據(jù)操作2.2.1運(yùn)算符與表達(dá)式2.2.2類型轉(zhuǎn)換
運(yùn)算符:在運(yùn)算數(shù)據(jù)時(shí),用來(lái)表示各種運(yùn)算的符號(hào)
1.運(yùn)算符的種類1)算術(shù)運(yùn)算符+-*/%++--2)關(guān)系運(yùn)算符><==>=<=!=3)邏輯運(yùn)算符!&&||4)位運(yùn)算符>><<~|^&5)賦值運(yùn)算符=及其擴(kuò)展賦值6)條件運(yùn)算符?:7)逗號(hào)運(yùn)算符
,8)指針運(yùn)算符*&2.2.1運(yùn)算符與表達(dá)式數(shù)據(jù)操作
2.2.1運(yùn)算符與表達(dá)式數(shù)據(jù)操作運(yùn)算符含義舉例結(jié)果說(shuō)明+加法運(yùn)算符a+ba與b的和無(wú)-減法運(yùn)算符a-ba與b的差無(wú)*乘法運(yùn)算符a*ba與b的乘積由于鍵盤無(wú)×號(hào),乘法運(yùn)算以*代替。/除法運(yùn)算符a/ba除以b的商由于鍵盤無(wú)÷號(hào),除法運(yùn)算以/代替。注意:兩個(gè)整數(shù)相除的結(jié)果為整數(shù),如3/2的結(jié)果為1,舍去小數(shù)部分。%求余運(yùn)算符a%ba除以b的余數(shù)求余運(yùn)算%僅用于整數(shù)間的運(yùn)算,若存在負(fù)整數(shù),則余數(shù)的正負(fù)號(hào)與被除數(shù)相同,如-3%2的結(jié)果為-1。++自增1運(yùn)算符a++或++a使a的值加1++和--為單目運(yùn)算,且只能用于單一變量運(yùn)算++a和--a,是在使用a之前,先使a的值加1或減1a++和a--,是在使用a之后,再使a的值加1或減1--自減1運(yùn)算符a--或--a使a的值減11.算術(shù)運(yùn)算符和表達(dá)式
1.算術(shù)運(yùn)算符和表達(dá)式
【例2-6】分析程序輸出結(jié)果。#include<stdio.h> voidmain() {inta=3,b=-5,i=2,j=2;
printf("%d,%d,%d,%d,%d\n",a+b,a-b,a*b,a/b,a%b);printf("%d,%d,%d,%d\n",a++,b--,++i,--j);printf("%d,%d,%d,%d\n",a,b,i,j);}2.2.1運(yùn)算符與表達(dá)式數(shù)據(jù)操作程序演示
運(yùn)行結(jié)果:2.賦值運(yùn)算符和表達(dá)式2.2.1運(yùn)算符與表達(dá)式數(shù)據(jù)操作簡(jiǎn)單賦值運(yùn)算符:=復(fù)合賦值運(yùn)算符:+=-=*=/=%=x*=y+8x=x*(y+8)x%=3x=x%3s+=is=s+3說(shuō)明:賦值運(yùn)算符左側(cè)必須是變量,不能是常量或表達(dá)式賦值運(yùn)算時(shí),賦值號(hào)右邊表達(dá)式值自動(dòng)轉(zhuǎn)換成其左邊變量的類型例inti;floatj;i=2.56;//結(jié)果i=2;j=i;//;例:a=b=c=5a=(b=5)a=5+(c=6)a=(b=4)+(c=6)a=(b=10)/(c=2)//表達(dá)式值為5,a,b,c值為5//b=5;a=5//表達(dá)式值11,c=6,a=11//表達(dá)式值10,a=10,b=4,c=6//表達(dá)式值5,a=5,b=10,c=2(1)不同類型數(shù)據(jù)運(yùn)算時(shí),自動(dòng)轉(zhuǎn)換成同一類型,再進(jìn)展計(jì)算.doublefloatLongunsignedintchar,short低高說(shuō)明:必定的轉(zhuǎn)換運(yùn)算對(duì)象類型不同時(shí)轉(zhuǎn)換2.2.2類型轉(zhuǎn)換數(shù)據(jù)操作(2)也可以對(duì)數(shù)據(jù)類型進(jìn)展強(qiáng)制轉(zhuǎn)換例(int)(x+y)(int)x+y(double)(3/2)(int)2.6說(shuō)明:強(qiáng)制轉(zhuǎn)換得到所需類型的中間變量,原變量類型不變例main(){floatx;inti;x=3.6;i=(int)x;printf(“x=%f,i=%d〞,x,i);}結(jié)果:x=3.600000,i=3精度損失問(wèn)題較高類型向較低類型轉(zhuǎn)換時(shí)可能發(fā)生2.2.2類型轉(zhuǎn)換數(shù)據(jù)操作【隨堂練習(xí)2-3】;intb;b=(int)a;,執(zhí)行該語(yǔ)句后,變量b的值為3,變量a的值還是,并且變量a的類型也不改變,依舊是double類型。2.有定義語(yǔ)句:charch='M';,寫出將變量ch變?yōu)樾懽帜傅谋磉_(dá)式:
。2.2.1類型轉(zhuǎn)換數(shù)據(jù)操作2.3算法與三種根本程序構(gòu)造2.3.1算法及其描述
2.3.2三種基本程序結(jié)構(gòu)1.算法的概念對(duì)于計(jì)算機(jī)程序可處理的問(wèn)題來(lái)說(shuō),程序中所用到的數(shù)據(jù)以及對(duì)這些數(shù)據(jù)的類型和數(shù)據(jù)組織形式的描述稱之為“數(shù)據(jù)構(gòu)造〞.對(duì)數(shù)據(jù)處理所采用的方法和步驟等操作的描述稱為“計(jì)算機(jī)算法〞。作為程序設(shè)計(jì)人員,必須認(rèn)真考慮和設(shè)計(jì)數(shù)據(jù)構(gòu)造和操作步驟〔即算法〕。著名計(jì)算機(jī)科學(xué)家沃思〔NikiklausWirth〕提出一個(gè)公式:2.3.1算法及其描述2.3算法與三種根本程序構(gòu)造程序=數(shù)據(jù)構(gòu)造+算法
2.3.1算法及其描述2.3算法與三種根本程序構(gòu)造圖形符號(hào)名稱含義起止框算法的起點(diǎn)和終點(diǎn),是任何流程圖比不可少的輸入、輸出框數(shù)據(jù)的輸入和輸出操作處理框各種形式數(shù)據(jù)的處理判斷框判斷條件是否成立,成立時(shí)在出口處標(biāo)注“是”或“Y”,不成立時(shí)標(biāo)注“否”或“N”特定過(guò)程一個(gè)特定過(guò)程,如函數(shù)流程線連接各個(gè)圖框,表示執(zhí)行的順序連接點(diǎn)表示與流程圖其它部分相連流程圖符號(hào)
下面對(duì)【例2-1】的算法描述改用流程圖的方法表示
2.3.1算法及其描述2.3算法與三種根本程序構(gòu)造開始結(jié)束計(jì)算圓的面積areaarea=3.14*r*r輸入半徑r值輸出面積值area1.順序構(gòu)造順序構(gòu)造指算法的實(shí)現(xiàn)過(guò)程按照相應(yīng)的步驟依次順序執(zhí)行,直至完畢。順序構(gòu)造是最簡(jiǎn)單的一種根本構(gòu)造。2.3.2三種基本程序結(jié)構(gòu)2.3算法與三種根本程序構(gòu)造1.順序構(gòu)造
2.3.2三種基本程序結(jié)構(gòu)2.3算法與三種根本程序構(gòu)造開始結(jié)束計(jì)算圓的面積areaarea=3.14*r*r輸入半徑r值輸出面積值area2.選擇構(gòu)造又稱為分支構(gòu)造,此構(gòu)造中必包含一個(gè)條件判斷,根據(jù)判斷結(jié)果從兩種或多種路徑中選擇其中的一條執(zhí)行。2.3.2三種基本程序結(jié)構(gòu)2.3算法與三種根本程序構(gòu)造2.選擇構(gòu)造
2.3.2三種基本程序結(jié)構(gòu)2.3算法與三種根本程序構(gòu)造結(jié)束計(jì)算圓的面積areaarea=3.14*r*rr是否合
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年UPS產(chǎn)品保修及售后服務(wù)條款2篇
- 2024年版加油服務(wù)全面承包協(xié)議模板版B版
- 2024-2030年中國(guó)實(shí)時(shí)數(shù)據(jù)庫(kù)行業(yè)發(fā)展模式規(guī)劃分析報(bào)告
- 2024-2030年中國(guó)城市配送行業(yè)發(fā)展模式規(guī)劃分析報(bào)告
- 2024年獨(dú)家版:新材料研發(fā)與技術(shù)轉(zhuǎn)讓合同
- 2024年物業(yè)管理與保養(yǎng)服務(wù)合同書版B版
- 2024年技術(shù)服務(wù)與維護(hù)合同
- 2024年挖掘機(jī)租賃期間的保險(xiǎn)責(zé)任合同
- 2025個(gè)人承包快遞運(yùn)輸合同
- 單位人力資源管理制度展示大全
- 《項(xiàng)目進(jìn)度管理研究文獻(xiàn)綜述》
- 信用風(fēng)險(xiǎn)加權(quán)資產(chǎn)計(jì)量與管理手冊(cè)課件
- 光伏項(xiàng)目試驗(yàn)報(bào)告
- 小學(xué)“雙減”作業(yè)設(shè)計(jì):小學(xué)數(shù)學(xué)四年級(jí)上冊(cè)作業(yè)設(shè)計(jì)案例
- 知識(shí)產(chǎn)權(quán)法(英文) Intellectual Property Right Law課件
- 綜合評(píng)分法評(píng)分表(建設(shè)工程)
- SBS卷材防水施工工藝
- 深化設(shè)計(jì)確認(rèn)記錄
- 小學(xué)生心理健康教育課件
- 熱力管道焊接技術(shù)交底記錄大全
- XX鎮(zhèn)2022年度農(nóng)產(chǎn)品綜合服務(wù)中心項(xiàng)目實(shí)施方案范本
評(píng)論
0/150
提交評(píng)論