C語言課件第一章1_第1頁
C語言課件第一章1_第2頁
C語言課件第一章1_第3頁
C語言課件第一章1_第4頁
C語言課件第一章1_第5頁
已閱讀5頁,還剩53頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

《研究式學(xué)習(xí)--C程序設(shè)計(jì)》1

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)《研究式學(xué)習(xí)--C程序設(shè)計(jì)》1第一章C程序入門2

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)第一章C程序入門2研究本講主要內(nèi)容程序的概念簡單C程序程序操作的對象——數(shù)據(jù)變量和常量數(shù)據(jù)類型3

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)本講主要內(nèi)容3研究式學(xué)程序程序就是做一件事情的先后步驟

植樹程序:挖坑在坑中放入樹苗添土到坑中澆水操作對象:坑,樹苗,土,水(數(shù)據(jù))操作:挖,放,添,澆(運(yùn)算符等)次序不能顛倒4

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)程序程序就是做一件事情的先后步驟操作對象:坑,樹苗,土,水計(jì)算機(jī)程序(1)計(jì)算機(jī)程序計(jì)算機(jī)程序=算法+數(shù)據(jù)結(jié)構(gòu)

計(jì)算機(jī)程序設(shè)計(jì)=算法+數(shù)據(jù)結(jié)構(gòu)+程序設(shè)計(jì)方法學(xué)

算法---就是解決問題的方法。(2)算法的特征有窮性如:Sinx=x/1-x3/3!+x5/5!-x7/7!+…不是算法。N!=1×2×3×…×N是算法。確定性如:菜譜中說“加少許鹽”不嚴(yán)格,不是算法??蓤?zhí)行性0個(gè)或多個(gè)輸入1個(gè)或多個(gè)輸出(3)算法描述工具:流程圖、N-S圖、PDL語言等5

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)計(jì)算機(jī)程序(1)計(jì)算機(jī)程序5程序流程圖表述算法舉例:輸入兩個(gè)數(shù),輸出其中的大者。用計(jì)算機(jī)語言實(shí)現(xiàn)算法!YNa>b?max=amax=b開始結(jié)束輸入兩個(gè)整數(shù)到a,b變量輸入max判斷框處理框起止框流程線輸入/輸出框6

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)程序流程圖表述算法舉例:輸入兩個(gè)數(shù),輸出其中的大者。用計(jì)算機(jī)簡單C程序例1_1在顯示器上輸出:helloworld首先要編輯該程序(可用任何編輯文本的軟件):#include“stdio.h”voidmain()/*主函數(shù)*/{printf(“helloworld”);/*調(diào)用輸出函數(shù)*/}

C程序的基本形式為:voidmain(){<語句系列>}C程序都有且僅有一個(gè)主函數(shù)。任何程序都從main函數(shù)開始執(zhí)行程序語句用于描述對象以及作用在這些對象上的操作,語句寫在函數(shù)體中(函數(shù)名后的一對花括號中),語句以分號結(jié)尾。關(guān)鍵字及編譯預(yù)處理命令用小寫字母書寫,不能在變量名、函數(shù)名、關(guān)鍵字中插入空格和空行。沒有行的概念,可任意書寫。7

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)簡單C程序例1_1在顯示器上輸出:helloworldC程序的實(shí)現(xiàn)程序的實(shí)現(xiàn)要經(jīng)過以下步驟:編輯:是將寫在紙上的源程序(.C)輸入計(jì)算機(jī)中,并以文件的形式存放。編譯:經(jīng)過C語言編譯(編譯程序)器將源程序編譯成目標(biāo)程序(擴(kuò)展名為.OBJ),并改正編譯中出現(xiàn)的語法錯誤。連接:對目標(biāo)程序進(jìn)行連接生成可執(zhí)行文件(擴(kuò)展名為.EXE)。運(yùn)行:運(yùn)行可執(zhí)行文件得到運(yùn)行結(jié)果。8

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)C程序的實(shí)現(xiàn)程序的實(shí)現(xiàn)要經(jīng)過以下步驟:8C程序的上機(jī)執(zhí)行過程執(zhí)行編輯編譯連接編輯程序C源程序.C編譯程序連接程序目標(biāo)程序.obj可執(zhí)行程序.exe用戶結(jié)果C編譯系統(tǒng)其它目標(biāo)文件C語言函數(shù)庫9

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)C程序的上機(jī)執(zhí)行過程執(zhí)編編連編輯C源編譯連接目標(biāo)可執(zhí)行用結(jié)CC程序格式及結(jié)構(gòu)特點(diǎn)

——程序格式編寫輸出兩個(gè)整數(shù)之和的C程序必須有#include"stdio.h"voidmain()/*求兩數(shù)之和*/{

}inta,b,sum;a=123;b=456;sum=a+b;printf(“a+b=%d\n",sum);輸出是:a+b=579

定義三個(gè)整型變量給變量賦值計(jì)算處理輸出結(jié)果10

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)C程序格式及結(jié)構(gòu)特點(diǎn)

C程序格式及結(jié)構(gòu)特點(diǎn)

——程序格式從鍵盤輸入任意兩個(gè)整數(shù),求它們的積。#include“stdio.h”voidmain(){}inta,b,sum;printf(“請輸入兩個(gè)整數(shù):\n”);scanf(“%d,%d”,&a,&b);sum=a*b;printf(“sum=%d\n”,sum);等待用戶從鍵盤輸入兩個(gè)整數(shù)程序運(yùn)行結(jié)果:請輸入兩個(gè)整數(shù):12,2sum=2411

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)C程序格式及結(jié)構(gòu)特點(diǎn)

程序操作的對象——數(shù)據(jù)

常量:如34,3.5,‘a(chǎn)’,“ok”具有固定值,其值不能改變。

變量:其值可以改變,變量名字與內(nèi)存空間相聯(lián)系。345sum變量值變量名變量的命名規(guī)則與標(biāo)識符的命名規(guī)則:(詳見課本)標(biāo)識符是編程者在程序中給所使用的常量、變量、函數(shù)、語句標(biāo)號、類型定義等所取的名字。數(shù)據(jù)程序處理的對象數(shù)據(jù)類型

數(shù)據(jù)在計(jì)算機(jī)內(nèi)部的存儲形式(占用的內(nèi)存單元數(shù)量、編碼方式、取值范圍等)12

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)程序操作的對象——數(shù)據(jù)常量:如34,3.5,‘a(chǎn)’,“=”運(yùn)算符改變變量的值:

……

inta,b;

a=8;b=9;/*a的值為8,b的值為9*/a=b+1;/*a的值變?yōu)?0*/a=b;/*a的值變?yōu)?*/a=a+1;8=a;5=8;?……變量的動態(tài)特性

存儲器的存取特點(diǎn)是:取之不盡,一存就變。因此,變量中的值可以反復(fù)讀取,其值不會改變。而把一個(gè)新值賦給變量時(shí),變量中原來的值就被新值所替代。13

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)“=”運(yùn)算符改變變量的值:變量的動態(tài)特性存儲常量與變量#include“stdio.h”#definePRICE30main(){intnum,total;floatv,r,h;num=10;total=num*PRICE;printf("total=%d",tatal);r=2.5;h=3.2;v=3.14159*r*r*h;printf(“v=%f\n”,v);}常量變量名:以字母或下劃線開頭,由數(shù)字、字母、下劃線構(gòu)成。最多31個(gè)字符,多余不識別,一般小寫。變量變量先定義后使用符號常量名字常用大寫常量:是指在程序執(zhí)行中其值不會改變的量變量:是指在程序執(zhí)行中其值可改變的量14

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)常量與變量#include“stdio.h”常量變量名:變下列是合法的標(biāo)識符:

astr2add100studentareaclass_5a_1下列是非法的標(biāo)識符:

3th#xyz“m+n”person-nameint

變量名區(qū)分大小寫,a和A,p和P是不同的變量。不能使用系統(tǒng)保留字(關(guān)鍵字)作為標(biāo)識符。

變量要先聲明(定義),后使用,定義的任務(wù)包括:變量的類型(int,float),變量的名字以及初值。15

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)下列是合法的標(biāo)識符:astr2add100關(guān)鍵字:是指在C語言中已預(yù)先定義具有特定含義的標(biāo)識符,通常也稱為保留字,編程者不得再重新命名另作他用。標(biāo)識類型的關(guān)鍵字(intcharfloatdoublelongshortunsignedstructunionenumautoexternstaticregistertypedefvoid)標(biāo)識控制流的關(guān)鍵字(gotoreturnbreakcontinueifelsedowhileswitchcasedefault)標(biāo)識預(yù)處理的關(guān)鍵字(defineincludeundefifdefifndefendif)其他關(guān)鍵字(sizeofasmfortranadapascal)

16

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)關(guān)鍵字:是指在C語言中已預(yù)先定義具有特定含義的標(biāo)識符,通常也數(shù)據(jù)類型數(shù)據(jù)類型就像商店出售的衣服有不同的尺寸,以供不同身材的人享用,C系統(tǒng)也根據(jù)數(shù)據(jù)存在的不同形式,將其分為不同的類型,各種數(shù)據(jù)類型具有不同的存儲長度、取值范圍及允許的操作。C數(shù)據(jù)類型如右圖所示:數(shù)據(jù)類型基本類型構(gòu)造類型指針類型整型int字符型char浮點(diǎn)型float(實(shí)型)double數(shù)組結(jié)構(gòu)體共用體枚舉指數(shù)據(jù)的內(nèi)在表現(xiàn)形式本講只介紹基本類型17

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)數(shù)據(jù)類型數(shù)據(jù)類型就像商店出售的衣服有不同的尺寸,以供不同身材數(shù)據(jù)類型--整型常量有三種形式的整型常量:(1)與習(xí)慣相同的十進(jìn)制整數(shù)。如:46,-23,0。(2)以數(shù)字0開頭的八進(jìn)制整數(shù)。如:0456表示八進(jìn)制數(shù)456,即(456)8=4*82+5*81+6*80,等于十進(jìn)制的302。(3)以數(shù)字0和x開頭的十六進(jìn)制整數(shù)。如:0x456表示十六進(jìn)制整數(shù)456,即(456)16=4*162+5*161+6*160,等于十進(jìn)制的1110整型變量的定義:用基本數(shù)據(jù)類型說明符int及類型修飾符:short,long,unsigned可定義不同大小的整型變量)18

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)數(shù)據(jù)類型--整型常量有三種形式的整型常量:整型變量的定義:

數(shù)據(jù)與數(shù)據(jù)類型:intint型數(shù)的表示范圍:二進(jìn)制16bit(2Byte)000000000000000100000000000000110111111111111111=1=3int型整數(shù)的最大值int型表示數(shù)的范圍:-32768~327671111111111111111注意:使用中要防止數(shù)據(jù)溢出=-1int型整數(shù)的最小值1000000000000000=215-1=32767=-215=-32768返回19

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)數(shù)據(jù)與數(shù)據(jù)類型:intint型數(shù)的表示范圍:二進(jìn)制16數(shù)據(jù)類型--整型數(shù)據(jù)的定義及取值范圍加修飾符數(shù)據(jù)類型的數(shù)據(jù)存儲格式和取值范圍:

shortint<==>int<==>shortsigned<==>int<==>shortint<==>short類型占用內(nèi)存單元取值范圍

unsignedint2字節(jié)0~65535

longint 4字節(jié)-2147483648~2147483647

unsignedlong4字節(jié)0~4294967295-231231-1216-1232-120

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)數(shù)據(jù)類型--整型數(shù)據(jù)的定義及取值范圍加修飾符數(shù)據(jù)類型的數(shù)據(jù)存數(shù)據(jù)的存儲形式有符號整數(shù)12與-12和存儲形式(補(bǔ)碼形式):000000000000110012:1111111111110100-12:#include“stdio.h”voidmain(){intx=-1;printf(“x=%d”,x);printf(“x=%u”,x);}運(yùn)行結(jié)果:x=-1x=6553521

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)數(shù)據(jù)的存儲形式有符號整數(shù)12與-12和存儲形式(補(bǔ)碼形式):數(shù)據(jù)類型--實(shí)型常量實(shí)型常量只有十進(jìn)制,但有2種形式:定點(diǎn):符號、整數(shù)、小數(shù)點(diǎn)和小數(shù),如:

1.01.+12.0-12.00.0指數(shù):1e31.8e-3-123e-6-.1e-3.1E10等價(jià)于:10001.8*10-3-123*10-6-0.1*10-30.1*1010

注意e(E)前必須有數(shù),e(E)后的指數(shù)必須為整數(shù),如:e2、2.1e3.5、.e3、e等都是非法的實(shí)數(shù)。實(shí)型變量的定義:floatf,r;doublearea;float4字節(jié)double8字節(jié)22

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)數(shù)據(jù)類型--實(shí)型常量實(shí)型常量只有十進(jìn)制,但有2種形式:注意eC語言基本數(shù)據(jù)類型有四種:字符型整型單精度浮點(diǎn)型雙精度浮點(diǎn)型charintfloatdouble類型說明符C語言的基本數(shù)據(jù)類型C語言有四種類型修飾符:短長有符號無符號shortlongsignedunsigned類型修飾符注意:類型修飾符不能單獨(dú)使用,必須與類型說明符配合在一起使用(int型可缺?。〤語言采用類型說明符說明不同的數(shù)據(jù)類型23

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)C語言基本數(shù)據(jù)類型有四種:char類型說明符C語言的基本數(shù)據(jù)數(shù)據(jù)類型--字符型數(shù)據(jù)(一)字符常量:一對單引號括起來的一個(gè)字符(大小寫有區(qū)別),如:‘a(chǎn)’,‘D’,‘?’,‘$’,‘’。以”\”開頭的特殊字符(轉(zhuǎn)義字符),如:‘\n’,’\343’,‘\x41’見p8表1-3

字符變量:用來存放字符常量

例:charc1,c2;

c1=‘a(chǎn)’;

c2=‘A’;字符數(shù)據(jù)在內(nèi)存中的存儲形式以ASCII碼存儲,占1字節(jié),用7個(gè)二進(jìn)制位976524

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)數(shù)據(jù)類型--字符型數(shù)據(jù)(一)字符常量:一對單引號括起來的一個(gè)轉(zhuǎn)義字符字符形式功能使用舉例

\0字符串結(jié)束標(biāo)志

\n換行(ASCII碼為10)

printf(”\n”);

\t橫向跳格 printf(”\t”);

\b退格

\r回車(ASCII碼為13)

\f走紙換頁

\\字符\(ASCII碼為92)’\\’

表示字符

\

\’單引號 ’\’’表示字符’

\”雙引號’\”’表示字符”

\ddd用8進(jìn)制表示字符’a’=’\141’’A’=’\101’

換行符’\12’

\xhh用16進(jìn)制表示字符’a’=’\x61’’A’=’\x41’換行符’\xa’25

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)轉(zhuǎn)義字符字符形式功能使用舉字符數(shù)據(jù)的使用方法字符數(shù)據(jù)和整型數(shù)據(jù)之間可以通用,可以按

字符形式輸出,也可以按整型輸出。字符數(shù)據(jù)與整型數(shù)據(jù)可以互相賦值。數(shù)據(jù)類型--字符型數(shù)據(jù)(二)字符串常量用一對雙引號括起來的一串字符(字母大小寫的ASCII值不同),如:“CProgram”,”a”,“3304035”,“”,“YES&NO”。26

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)字符數(shù)據(jù)的使用方法數(shù)據(jù)類型--字符型數(shù)據(jù)(二)字符串常量26字符串常數(shù)字符串常量:用雙引號括起來的字符序列實(shí)例:”ThisisCstring.”

”a”

(1個(gè)空格)

””

(不含空格)

串定界符:雙引號

””字符串長度:字符串中包含的字符數(shù)量。串長=17串長=1串長=1串長=0"\t\"Name\\Address\n"串長=15空串實(shí)例:"\"Cisveryeasy.\""串長=17注意:字符串"a"

與字符’a’的區(qū)別"Hesaid\"ok.\"\n"串長=1327

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)字符串常數(shù)字符串常量:用雙引號括起來的字符序列串長=17"\字符數(shù)據(jù)的存儲形式67727378650例:"CHINA"

"a"

‘a(chǎn)’

97所以:charc;

c="a";字符串后有“串結(jié)束標(biāo)志”,字符后沒有。CHINA\0a

\0a是ASCII值為0的字符、是空操作符、是非顯示字符數(shù)據(jù)類型--字符型數(shù)據(jù)(三)28

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)字符數(shù)據(jù)的存儲形式CHINA變量必須先定義后使用,定義格式:[類型修飾符]類型說明符

變量列表;C語言允許在定義變量時(shí)對變量進(jìn)行初始化,即對變量賦初值。例:

inta=3;

floatf=3.56,x=1.0;

charc=‘a(chǎn)’;

intb,c,d=5,a;

intx=y=0;b=c=8;

不能重復(fù)定義定義并初始化不能連寫數(shù)據(jù)類型--變量賦初值

賦值時(shí)可以連寫定義(聲明)變量后:確定了該變量占用內(nèi)存單元的數(shù)量,數(shù)據(jù)在內(nèi)存的表示方式,數(shù)據(jù)的取值范圍。29

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)變量必須先定義后使用,定義格式:不能重復(fù)定義定義并《研究式學(xué)習(xí)--C程序設(shè)計(jì)》30

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)《研究式學(xué)習(xí)--C程序設(shè)計(jì)》1第一章C程序入門31

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)第一章C程序入門2研究本講主要內(nèi)容程序的概念簡單C程序程序操作的對象——數(shù)據(jù)變量和常量數(shù)據(jù)類型32

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)本講主要內(nèi)容3研究式學(xué)程序程序就是做一件事情的先后步驟

植樹程序:挖坑在坑中放入樹苗添土到坑中澆水操作對象:坑,樹苗,土,水(數(shù)據(jù))操作:挖,放,添,澆(運(yùn)算符等)次序不能顛倒33

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)程序程序就是做一件事情的先后步驟操作對象:坑,樹苗,土,水計(jì)算機(jī)程序(1)計(jì)算機(jī)程序計(jì)算機(jī)程序=算法+數(shù)據(jù)結(jié)構(gòu)

計(jì)算機(jī)程序設(shè)計(jì)=算法+數(shù)據(jù)結(jié)構(gòu)+程序設(shè)計(jì)方法學(xué)

算法---就是解決問題的方法。(2)算法的特征有窮性如:Sinx=x/1-x3/3!+x5/5!-x7/7!+…不是算法。N!=1×2×3×…×N是算法。確定性如:菜譜中說“加少許鹽”不嚴(yán)格,不是算法??蓤?zhí)行性0個(gè)或多個(gè)輸入1個(gè)或多個(gè)輸出(3)算法描述工具:流程圖、N-S圖、PDL語言等34

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)計(jì)算機(jī)程序(1)計(jì)算機(jī)程序5程序流程圖表述算法舉例:輸入兩個(gè)數(shù),輸出其中的大者。用計(jì)算機(jī)語言實(shí)現(xiàn)算法!YNa>b?max=amax=b開始結(jié)束輸入兩個(gè)整數(shù)到a,b變量輸入max判斷框處理框起止框流程線輸入/輸出框35

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)程序流程圖表述算法舉例:輸入兩個(gè)數(shù),輸出其中的大者。用計(jì)算機(jī)簡單C程序例1_1在顯示器上輸出:helloworld首先要編輯該程序(可用任何編輯文本的軟件):#include“stdio.h”voidmain()/*主函數(shù)*/{printf(“helloworld”);/*調(diào)用輸出函數(shù)*/}

C程序的基本形式為:voidmain(){<語句系列>}C程序都有且僅有一個(gè)主函數(shù)。任何程序都從main函數(shù)開始執(zhí)行程序語句用于描述對象以及作用在這些對象上的操作,語句寫在函數(shù)體中(函數(shù)名后的一對花括號中),語句以分號結(jié)尾。關(guān)鍵字及編譯預(yù)處理命令用小寫字母書寫,不能在變量名、函數(shù)名、關(guān)鍵字中插入空格和空行。沒有行的概念,可任意書寫。36

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)簡單C程序例1_1在顯示器上輸出:helloworldC程序的實(shí)現(xiàn)程序的實(shí)現(xiàn)要經(jīng)過以下步驟:編輯:是將寫在紙上的源程序(.C)輸入計(jì)算機(jī)中,并以文件的形式存放。編譯:經(jīng)過C語言編譯(編譯程序)器將源程序編譯成目標(biāo)程序(擴(kuò)展名為.OBJ),并改正編譯中出現(xiàn)的語法錯誤。連接:對目標(biāo)程序進(jìn)行連接生成可執(zhí)行文件(擴(kuò)展名為.EXE)。運(yùn)行:運(yùn)行可執(zhí)行文件得到運(yùn)行結(jié)果。37

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)C程序的實(shí)現(xiàn)程序的實(shí)現(xiàn)要經(jīng)過以下步驟:8C程序的上機(jī)執(zhí)行過程執(zhí)行編輯編譯連接編輯程序C源程序.C編譯程序連接程序目標(biāo)程序.obj可執(zhí)行程序.exe用戶結(jié)果C編譯系統(tǒng)其它目標(biāo)文件C語言函數(shù)庫38

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)C程序的上機(jī)執(zhí)行過程執(zhí)編編連編輯C源編譯連接目標(biāo)可執(zhí)行用結(jié)CC程序格式及結(jié)構(gòu)特點(diǎn)

——程序格式編寫輸出兩個(gè)整數(shù)之和的C程序必須有#include"stdio.h"voidmain()/*求兩數(shù)之和*/{

}inta,b,sum;a=123;b=456;sum=a+b;printf(“a+b=%d\n",sum);輸出是:a+b=579

定義三個(gè)整型變量給變量賦值計(jì)算處理輸出結(jié)果39

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)C程序格式及結(jié)構(gòu)特點(diǎn)

C程序格式及結(jié)構(gòu)特點(diǎn)

——程序格式從鍵盤輸入任意兩個(gè)整數(shù),求它們的積。#include“stdio.h”voidmain(){}inta,b,sum;printf(“請輸入兩個(gè)整數(shù):\n”);scanf(“%d,%d”,&a,&b);sum=a*b;printf(“sum=%d\n”,sum);等待用戶從鍵盤輸入兩個(gè)整數(shù)程序運(yùn)行結(jié)果:請輸入兩個(gè)整數(shù):12,2sum=2440

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)C程序格式及結(jié)構(gòu)特點(diǎn)

程序操作的對象——數(shù)據(jù)

常量:如34,3.5,‘a(chǎn)’,“ok”具有固定值,其值不能改變。

變量:其值可以改變,變量名字與內(nèi)存空間相聯(lián)系。345sum變量值變量名變量的命名規(guī)則與標(biāo)識符的命名規(guī)則:(詳見課本)標(biāo)識符是編程者在程序中給所使用的常量、變量、函數(shù)、語句標(biāo)號、類型定義等所取的名字。數(shù)據(jù)程序處理的對象數(shù)據(jù)類型

數(shù)據(jù)在計(jì)算機(jī)內(nèi)部的存儲形式(占用的內(nèi)存單元數(shù)量、編碼方式、取值范圍等)41

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)程序操作的對象——數(shù)據(jù)常量:如34,3.5,‘a(chǎn)’,“=”運(yùn)算符改變變量的值:

……

inta,b;

a=8;b=9;/*a的值為8,b的值為9*/a=b+1;/*a的值變?yōu)?0*/a=b;/*a的值變?yōu)?*/a=a+1;8=a;5=8;?……變量的動態(tài)特性

存儲器的存取特點(diǎn)是:取之不盡,一存就變。因此,變量中的值可以反復(fù)讀取,其值不會改變。而把一個(gè)新值賦給變量時(shí),變量中原來的值就被新值所替代。42

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)“=”運(yùn)算符改變變量的值:變量的動態(tài)特性存儲常量與變量#include“stdio.h”#definePRICE30main(){intnum,total;floatv,r,h;num=10;total=num*PRICE;printf("total=%d",tatal);r=2.5;h=3.2;v=3.14159*r*r*h;printf(“v=%f\n”,v);}常量變量名:以字母或下劃線開頭,由數(shù)字、字母、下劃線構(gòu)成。最多31個(gè)字符,多余不識別,一般小寫。變量變量先定義后使用符號常量名字常用大寫常量:是指在程序執(zhí)行中其值不會改變的量變量:是指在程序執(zhí)行中其值可改變的量43

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)常量與變量#include“stdio.h”常量變量名:變下列是合法的標(biāo)識符:

astr2add100studentareaclass_5a_1下列是非法的標(biāo)識符:

3th#xyz“m+n”person-nameint

變量名區(qū)分大小寫,a和A,p和P是不同的變量。不能使用系統(tǒng)保留字(關(guān)鍵字)作為標(biāo)識符。

變量要先聲明(定義),后使用,定義的任務(wù)包括:變量的類型(int,float),變量的名字以及初值。44

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)下列是合法的標(biāo)識符:astr2add100關(guān)鍵字:是指在C語言中已預(yù)先定義具有特定含義的標(biāo)識符,通常也稱為保留字,編程者不得再重新命名另作他用。標(biāo)識類型的關(guān)鍵字(intcharfloatdoublelongshortunsignedstructunionenumautoexternstaticregistertypedefvoid)標(biāo)識控制流的關(guān)鍵字(gotoreturnbreakcontinueifelsedowhileswitchcasedefault)標(biāo)識預(yù)處理的關(guān)鍵字(defineincludeundefifdefifndefendif)其他關(guān)鍵字(sizeofasmfortranadapascal)

45

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)關(guān)鍵字:是指在C語言中已預(yù)先定義具有特定含義的標(biāo)識符,通常也數(shù)據(jù)類型數(shù)據(jù)類型就像商店出售的衣服有不同的尺寸,以供不同身材的人享用,C系統(tǒng)也根據(jù)數(shù)據(jù)存在的不同形式,將其分為不同的類型,各種數(shù)據(jù)類型具有不同的存儲長度、取值范圍及允許的操作。C數(shù)據(jù)類型如右圖所示:數(shù)據(jù)類型基本類型構(gòu)造類型指針類型整型int字符型char浮點(diǎn)型float(實(shí)型)double數(shù)組結(jié)構(gòu)體共用體枚舉指數(shù)據(jù)的內(nèi)在表現(xiàn)形式本講只介紹基本類型46

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)數(shù)據(jù)類型數(shù)據(jù)類型就像商店出售的衣服有不同的尺寸,以供不同身材數(shù)據(jù)類型--整型常量有三種形式的整型常量:(1)與習(xí)慣相同的十進(jìn)制整數(shù)。如:46,-23,0。(2)以數(shù)字0開頭的八進(jìn)制整數(shù)。如:0456表示八進(jìn)制數(shù)456,即(456)8=4*82+5*81+6*80,等于十進(jìn)制的302。(3)以數(shù)字0和x開頭的十六進(jìn)制整數(shù)。如:0x456表示十六進(jìn)制整數(shù)456,即(456)16=4*162+5*161+6*160,等于十進(jìn)制的1110整型變量的定義:用基本數(shù)據(jù)類型說明符int及類型修飾符:short,long,unsigned可定義不同大小的整型變量)47

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)數(shù)據(jù)類型--整型常量有三種形式的整型常量:整型變量的定義:

數(shù)據(jù)與數(shù)據(jù)類型:intint型數(shù)的表示范圍:二進(jìn)制16bit(2Byte)000000000000000100000000000000110111111111111111=1=3int型整數(shù)的最大值int型表示數(shù)的范圍:-32768~327671111111111111111注意:使用中要防止數(shù)據(jù)溢出=-1int型整數(shù)的最小值1000000000000000=215-1=32767=-215=-32768返回48

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)數(shù)據(jù)與數(shù)據(jù)類型:intint型數(shù)的表示范圍:二進(jìn)制16數(shù)據(jù)類型--整型數(shù)據(jù)的定義及取值范圍加修飾符數(shù)據(jù)類型的數(shù)據(jù)存儲格式和取值范圍:

shortint<==>int<==>shortsigned<==>int<==>shortint<==>short類型占用內(nèi)存單元取值范圍

unsignedint2字節(jié)0~65535

longint 4字節(jié)-2147483648~2147483647

unsignedlong4字節(jié)0~4294967295-231231-1216-1232-149

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)數(shù)據(jù)類型--整型數(shù)據(jù)的定義及取值范圍加修飾符數(shù)據(jù)類型的數(shù)據(jù)存數(shù)據(jù)的存儲形式有符號整數(shù)12與-12和存儲形式(補(bǔ)碼形式):000000000000110012:1111111111110100-12:#include“stdio.h”voidmain(){intx=-1;printf(“x=%d”,x);printf(“x=%u”,x);}運(yùn)行結(jié)果:x=-1x=6553550

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)數(shù)據(jù)的存儲形式有符號整數(shù)12與-12和存儲形式(補(bǔ)碼形式):數(shù)據(jù)類型--實(shí)型常量實(shí)型常量只有十進(jìn)制,但有2種形式:定點(diǎn):符號、整數(shù)、小數(shù)點(diǎn)和小數(shù),如:

1.01.+12.0-12.00.0指數(shù):1e31.8e-3-123e-6-.1e-3.1E10等價(jià)于:10001.8*10-3-123*10-6-0.1*10-30.1*1010

注意e(E)前必須有數(shù),e(E)后的指數(shù)必須為整數(shù),如:e2、2.1e3.5、.e3、e等都是非法的實(shí)數(shù)。實(shí)型變量的定義:floatf,r;doublearea;float4字節(jié)double8字節(jié)51

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)數(shù)據(jù)類型--實(shí)型常量實(shí)型常量只有十進(jìn)制,但有2種形式:注意eC語言基本數(shù)據(jù)類型有四種:字符型整型單精度浮點(diǎn)型雙精度浮點(diǎn)型charintfloatdouble類型說明符C語言的基本數(shù)據(jù)類型C語言有四種類型修飾符:短長有符號無符號shortlongsignedunsigned類型修飾符注意:類型修飾符不能單獨(dú)使用,必須與類型說明符配合在一起使用(int型可缺?。〤語言采用類型說明符說明不同的數(shù)據(jù)類型52

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)C語言基本數(shù)據(jù)類型有四種:char類型說明符C語言的基本數(shù)據(jù)數(shù)據(jù)類型--字符型數(shù)據(jù)(一)字符常量:一對單引號括起來的一個(gè)字符(大小寫有區(qū)別),如:‘a(chǎn)’,‘D’,‘?’,‘$’,‘’。以”\”開頭的特殊字符(轉(zhuǎn)義字符),如:‘\n’,’\343’,‘\x41’見p8表1-3

字符變量:用來存放字符常量

例:charc1,c2;

c1=‘a(chǎn)’;

c2=‘A’;字符數(shù)據(jù)在內(nèi)存中的存儲形式以ASCII碼存儲,占1字節(jié),用7個(gè)二進(jìn)制位976553

研究式學(xué)習(xí)—C程序設(shè)計(jì)(第一章)數(shù)據(jù)類型--字符型數(shù)據(jù)(一)字符常量:一對單引號括起來的一個(gè)轉(zhuǎn)義字符字符形式功能使用舉例

\0字符串結(jié)束標(biāo)志

\n換行(ASCII碼為10)

print

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論