版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1教學(xué)目標(biāo)掌握C語(yǔ)言標(biāo)識(shí)符的組成理解C語(yǔ)言的基本數(shù)據(jù)類型掌握變量定義的方法掌握常用的運(yùn)算符的使用掌握混合運(yùn)算的數(shù)據(jù)轉(zhuǎn)換方法結(jié)合課程思政實(shí)例/*求兩個(gè)整數(shù)相除的商*/#include<stdio.h>intmain(){
intx,y,s;
scanf("%d%d",&x,&y); s=x/y; printf("商是:%d",s);return0;}2/*求兩個(gè)小數(shù)相除的商*/#include<stdio.h>intmain(){
floatx,y,s; scanf("%f%f",&x,&y);s=x/y; printf("商是:%f",s);return0;}3/*求正整數(shù)n的階乘*/#include<stdio.h>intmain(){
inti,n,p=1;
scanf("%d",&n); for(i=1;i<=n;i++)p=p*i; printf("階乘是:%d\n",p);return0;}4/*求正整數(shù)n的階乘*/#include<stdio.h>intmain(){
inti,n;long
long
intp;
while(scanf("%d",&n)!=EOF){p=1;for(i=1;i<=n;i++)p=p*i;printf(“階乘是:%I64d\n",p);}
return0;}52.1C語(yǔ)言的數(shù)據(jù)類型基本類型整型:短整型(short)、整型(int)、長(zhǎng)整型(long)浮點(diǎn)型:?jiǎn)尉刃?float)、雙精度型(double)字符類型(char)枚舉(enum)構(gòu)造類型:數(shù)組、結(jié)構(gòu)體、共用體指針類型62.2常量與變量2.2.1標(biāo)識(shí)符命名2.2.2常量2.2.3變量72.2.1標(biāo)識(shí)符命名標(biāo)識(shí)符:字符序列的總稱。在C語(yǔ)言里用標(biāo)示符來表示常量、變量、函數(shù)和數(shù)據(jù)類型的名字字母、數(shù)字和下劃線組成;第一個(gè)字符不能是數(shù)字字符;不能是標(biāo)準(zhǔn)字符(關(guān)鍵字);8舉例sumSumM.D.Johndadate3daysstudent_name#33lotus_1_2_3chara>b_above$123√√X√√X√X√XX√X
92.2.2常量常量:在程序運(yùn)行過程中其值不發(fā)生改變的量直接常量符號(hào)常量:用一個(gè)標(biāo)識(shí)符來表示常量#define符號(hào)常量常量值#definePRICE30#include<stdio.h>intmain(){intnum,total;num=10;total=num*PRICE;printf("total=%d",total);return0;}運(yùn)行結(jié)果:total=300
10使用符號(hào)常量的優(yōu)點(diǎn)可以使程序更清晰易讀程序修改更加容易通常用大寫字母表示符號(hào)常量,小寫字母表示變量,以便區(qū)別112.2.3變量變量:在程序運(yùn)行過程中其值可以發(fā)生改變的量變量名變量類型變量的值定義形式類型名變量名1,變量名2,……,變量名n;inta,b,c;charch;doubled,f;變量實(shí)現(xiàn)的本質(zhì)三要素:數(shù)據(jù)類型、變量名、值inta=1,b=2;12132.3整型數(shù)據(jù)整型常量:整數(shù)(十進(jìn)制常量、八進(jìn)制常量和十六進(jìn)制常量)
類型組成組成規(guī)則舉例十進(jìn)制數(shù)字0~9非0數(shù)字開頭12-1234+10八進(jìn)制數(shù)字0~70數(shù)字開頭012十六進(jìn)制數(shù)字0~9字母a~f(或A~F)0x或0X開頭0x100x12f(1)常量前面的“+”和“-”表示數(shù)的正、負(fù)。(2)常量也有類型,整型常量默認(rèn)是int型(即有符號(hào)整數(shù))(3)在數(shù)的后面加上字母u或U表示無符號(hào)整數(shù),加上字母l或L表示長(zhǎng)整型數(shù)142.3.2整型變量整型數(shù)據(jù)在內(nèi)存中的存儲(chǔ)形式:整型數(shù)據(jù)在內(nèi)存中是以二進(jìn)制補(bǔ)碼的形式存放11111111111111111111111111110100符號(hào)位對(duì)于4個(gè)字節(jié)的整數(shù)-1215整型變量的分類分類有無符號(hào)位數(shù)取值范圍短整型shortunsigned(無)160~65535signed(有)16-32768~32767整型intunsigned(無)16或320~655350~4294967295signed(有)16或32-32768~32767-2147483648~2147483647長(zhǎng)整型longunsigned(無)320~4294967295signed(有)32-2147483648~2147483647注:判斷某一數(shù)據(jù)類型占內(nèi)存的字節(jié)數(shù)可用sizeof(數(shù)據(jù)類型說明)來計(jì)算16整型變量的定義方法[符號(hào)說明]<精度說明>變量名表;
unsignedshorta,b;signedshorta,b;unsignedinta,b;int
a,b;unsignedlonga,b;172.4浮點(diǎn)型數(shù)據(jù)浮點(diǎn)型常量:實(shí)型常量或?qū)崝?shù),它只有十進(jìn)制形式,全部都是有符號(hào)數(shù)小數(shù)形式:0~9,小數(shù)點(diǎn)和正負(fù)號(hào)表示指數(shù)形式:0~9、小數(shù)點(diǎn)、+-號(hào)和字母e/E說明:(1)浮點(diǎn)型常量的默認(rèn)類型是double(2)在常量后面加f或F指定為float型(3)指數(shù)必須為整數(shù)(4)e/E之前必須有數(shù)字182.4.2浮點(diǎn)型變量存儲(chǔ)形式19浮點(diǎn)型變量的分類單精度(float)雙精度(double)長(zhǎng)雙精度(longdouble)分類位數(shù)有效數(shù)字位取值范圍單精度326~7|1.17e–38|~|3.4e+38|雙精度6415~16|2.2e–308|~|1.7e+308|長(zhǎng)雙精度12818~19|3.3e–4932|~|1.1e+4932|浮點(diǎn)型變量定義方法類型說明符變量名列表;20float
a,b,c;double
a,b,c;longdoublea,b,c;1)浮點(diǎn)型數(shù)據(jù)的有效數(shù)字位有限制2)有效位以外的數(shù)字將被舍去212.5字符型數(shù)據(jù)字符常量:用單引號(hào)括起來的單個(gè)普通字符或轉(zhuǎn)義字符單引號(hào)中的字符不能是單引號(hào)(')和反斜杠(\)字符是按其所對(duì)應(yīng)的ASCII碼值來存儲(chǔ)的,一個(gè)字符占一個(gè)字節(jié)(即8位,但最高位為0)
22字符串常量:一對(duì)雙引號(hào)(")括起來的一串字符
字符串常量在內(nèi)存中存儲(chǔ):保存每個(gè)字符的ASCII值系統(tǒng)自動(dòng)在字符串的末尾加一個(gè)串結(jié)束標(biāo)志China\0字符串:"China"
"
A"和'A'的區(qū)別?C語(yǔ)言和C++語(yǔ)言變量定義比較C語(yǔ)言先定義,后賦值一般放在函數(shù)開頭C++語(yǔ)言先定義,后賦值可以放在函數(shù)任何位置23intmain(){inta,b=2;a=1;
doublec;c=(a+b)*1.2;printf("c=%lf\n",c);return0;}intmain(){inta,b=2;
doublec;
a=1;c=(a+b)*1.2;printf("c=%lf\n",c);return0;}24轉(zhuǎn)義字符:用反斜杠\后面跟一個(gè)字符或一個(gè)八進(jìn)制或十六進(jìn)制數(shù)表示轉(zhuǎn)義字符功能與意義ASCII值\a響鈴7\b退格8\f換頁(yè)12\n換行10\r回車(返回到當(dāng)前行首)13\t水平制表9\v垂直制表11\0ASCII為0的字符0\\字符\92\'字符'39\"字符"34\ddd八進(jìn)制表示的ASCII碼的字符三位八進(jìn)制\xhh十六進(jìn)制表示的ASCII碼的字符兩位十六進(jìn)制25例轉(zhuǎn)義字符舉例
#include<stdio.h>#include<stdlib.h>intmain(){printf("\101\x42C\n");printf("Isay:\"Howareyou?\"\n");printf("\\CProgram\\\n");printf("Turbo\'C\'");
system("system");return0;}運(yùn)行結(jié)果:ABCIsay:"Howareyou?"\CProgram\Turbo'C'例
intmain(){printf("Y\b=\n");return0;}運(yùn)行結(jié)果:屏幕顯示:=打印機(jī)輸出:¥26字符變量字符變量用來存放字符,它只能存放一個(gè)字符,不能存放字符串字符變量的定義形式char變量名表;charc1,c2;
charc1,c2;#include<stdio.h>intmain(){charc1='a',c2='b';c1=c1-('a'-'A');c2=c2-('a'-'A');printf("%c%c\n",c1,c2);return0;}程序運(yùn)行結(jié)果:AB272.6運(yùn)算符和表達(dá)式2.6.1算術(shù)運(yùn)算符2.6.2自增和自減運(yùn)算符2.6.3關(guān)系和邏輯運(yùn)算符2.6.4位運(yùn)算符2.6.5條件運(yùn)算符2.6.6逗號(hào)運(yùn)算符2.6.8復(fù)合賦值運(yùn)算符282.6.1算術(shù)運(yùn)算符算術(shù)運(yùn)算符:+、-、*、/、%說明:兩個(gè)整數(shù)相除,所得商仍然為整數(shù),舍去小數(shù)部分,即3/2結(jié)果是1,而不是1.5取余運(yùn)算要求運(yùn)算符兩端都必須為整型數(shù)據(jù),浮點(diǎn)數(shù)據(jù)不能進(jìn)行取余運(yùn)算除數(shù)或被除數(shù)中有一個(gè)是負(fù)數(shù),取余運(yùn)算的結(jié)果可根據(jù)公式m=pq+r得到余數(shù)優(yōu)先級(jí):*、/、%的優(yōu)先級(jí)高于+和-結(jié)合性:從左向右295+39-25*43/44%3-5%25%-2872001-11302.6.2自增和自減運(yùn)算符++:變量自加1--:變量自減1前置運(yùn)算:++在變量的前面:變量先進(jìn)行加1運(yùn)算,然后再參與其它運(yùn)算
--在變量的前面:變量先進(jìn)行減1運(yùn)算,然后再參與其它運(yùn)算intx=5,y=6;++x--y++x為6,x值為6--y為5,y值為531后置運(yùn)算:++在變量的后面,則先參與其它運(yùn)算,然后變量再進(jìn)行加1運(yùn)算--在變量的后面:則先參與其它運(yùn)算,然后變量再進(jìn)行減1intx=5,y=6;x++y--x++為5,x值為6y--為6,y值為532說明++,--運(yùn)算只能用于變量,不能用于常量和表達(dá)式++,--運(yùn)算的優(yōu)先級(jí)為2級(jí),高于*、/、%運(yùn)算++,--運(yùn)算的結(jié)合性是從右向左前置運(yùn)算和后置運(yùn)算可能帶來副作用x+++y?=>x+(++y),(x++)+y在函數(shù)中作為參數(shù):printf(“%d,%d\n”,i,i++)i=5,計(jì)算(++i)+(++i)+(++i)
:在VS2019C++上運(yùn)行是24,CodeBlocks上運(yùn)行是22,DevC++上運(yùn)行是2233例2.6:前置和后置運(yùn)算#include<stdio.h>intmain(){ inti,j,m,n; i=8; j=10; m=++i; n=j++; printf("%d,%d,%d,%d\n",i,j,m,n); return0;}程序運(yùn)行結(jié)果:9,11,9,10342.6.3關(guān)系和邏輯運(yùn)算符運(yùn)算符符號(hào)含義舉例優(yōu)先級(jí)結(jié)合性關(guān)系運(yùn)算符>大于5>4,x>y6從左向右<小于4>5,x<y6從左向右>=大于等于5>=4,x>=y6從左向右<=小于等于5<=4,x<=y6從左向右==等于4==4,x==y7從左向右!=不等于5!=4,x!=y7從左向右邏輯運(yùn)算符&&與x>3&&x<=811從左向右||或x<-2||x>512從左向右!非!(x>5)2從右向左35pq!p!qp&&qp||q110011100101011001001100邏輯運(yùn)算真值表(1)關(guān)系和邏輯運(yùn)算符的關(guān)鍵是true(真)和false(假)(2)C語(yǔ)言中,非0為真,0為假
362.6.4位運(yùn)算符進(jìn)行按位運(yùn)算時(shí),必須將運(yùn)算對(duì)象轉(zhuǎn)化為二進(jìn)制位運(yùn)算必須是整型和字符型數(shù)據(jù)符號(hào)含義舉例優(yōu)先級(jí)結(jié)合性&按位與5&48從左向右|按位或5|410從左向右^按位異或5^49從左向右~按位反~52從右向左>>按位右移10>>25從左向右<<按位左移10<<25從左向右372.6.5條件運(yùn)算符格式:運(yùn)算對(duì)象1?運(yùn)算對(duì)象2:運(yùn)算對(duì)象3功能:先判斷運(yùn)算對(duì)象1的值是否為非0,如果是非0,其值為運(yùn)算對(duì)象2的值,否則為運(yùn)算對(duì)象3的值a>b?a:b
38說明:運(yùn)算對(duì)象1、運(yùn)算對(duì)象2、運(yùn)算對(duì)象3可以是任意類型,一般運(yùn)算對(duì)象1為關(guān)系或邏輯運(yùn)算對(duì)象的式子,其類型可以相同,也可以不相同。條件運(yùn)算符的優(yōu)先級(jí)為13級(jí)條件運(yùn)算符的結(jié)合性是從右向左結(jié)合的392.6.6逗號(hào)運(yùn)算符定義:用逗號(hào)把幾個(gè)運(yùn)算對(duì)象連接起來格式:運(yùn)算對(duì)象1,運(yùn)算對(duì)象2,……
,運(yùn)算對(duì)象n功能:先計(jì)算運(yùn)算對(duì)象1的值,再計(jì)算運(yùn)算對(duì)象2的值,直到最后計(jì)算運(yùn)算對(duì)象n的值x=5*6,x+10
a=3,b=4,a++,b++,a+b
40
9
說明:(1)逗號(hào)運(yùn)算符的優(yōu)先級(jí)是15。(2)逗號(hào)運(yùn)算符的結(jié)合性是從左向右402.6.7賦值運(yùn)算符賦值運(yùn)算符:=格式:變量=運(yùn)算對(duì)象功能:把右邊運(yùn)算對(duì)象的值賦給左邊變量賦值運(yùn)算符“=”和判斷相等(==)的區(qū)別賦值運(yùn)算符的優(yōu)先級(jí)為14級(jí)賦值運(yùn)算符的結(jié)合性是從右向左賦值中的類型轉(zhuǎn)換以左邊變量的類型為主412.6.8復(fù)合賦值運(yùn)算符定義:復(fù)合賦值運(yùn)算符是在賦值的同時(shí),進(jìn)行了運(yùn)算格式:變量<運(yùn)算符>=運(yùn)算對(duì)象
相當(dāng)于:變量=變量<運(yùn)算符>(運(yùn)算對(duì)象)優(yōu)先級(jí):14結(jié)合性:從右向左42運(yùn)算符含義舉例優(yōu)先級(jí)結(jié)合性+=加賦值x+=5相當(dāng)于x=x+514從右向左-=減賦值x-=5相當(dāng)于x=x-514從右向左*=乘賦值x*=5相當(dāng)于x=x*514從右向左/=除賦值x/=5相當(dāng)于x=x/514從右向左%=取余賦值x%=5相當(dāng)于x=x%514從右向左&=按位與賦值x&=5相當(dāng)于x=x&514從右向左^=按位異或賦值x^=5相當(dāng)于x=x^514從右向左|=按位或賦值x|=5相當(dāng)于x=x|514從右向左>>=按位右移賦值x>>=5相當(dāng)于x=x>>514從右向左<<=按位左移賦值x<<=5相當(dāng)于x=x<<514從右向左432.7表達(dá)式求值2.7.1算術(shù)表達(dá)式2.7.2賦值表達(dá)式2.7.3關(guān)系表達(dá)式和邏輯表達(dá)式442.7.1算術(shù)表達(dá)式定義:用算術(shù)運(yùn)算符號(hào)將運(yùn)算對(duì)象(常量、變量、函數(shù)值等)、圓括號(hào)連接起來的式子25x'*'7%12)3/(aba++45表達(dá)式的求值a=10b=3'*'7%12)3/(aba++46數(shù)學(xué)公式的C語(yǔ)言表示常用的標(biāo)準(zhǔn)數(shù)學(xué)函數(shù)開平方函數(shù):sqrt(x)求絕對(duì)值|x|:abs(x),fabs(x)自然指數(shù):exp(x)x的y次冪:pow(x,y)自然對(duì)數(shù):log(x)常用對(duì)數(shù):log10()4748表達(dá)式值的類型同一表達(dá)式中的不同類型常量及變量,均應(yīng)轉(zhuǎn)換為同一類型的量C語(yǔ)言的編譯程序?qū)⑺胁僮鲾?shù)轉(zhuǎn)換為與最高類型操作數(shù)同類型自動(dòng)類型轉(zhuǎn)換49強(qiáng)制類型轉(zhuǎn)換(類型名)(表達(dá)式)原來變量的數(shù)據(jù)類型不發(fā)生變化(int)(x+y)(int)x+y(double)(3/2)(int)3.6精度損失問題較高類型向較低類型轉(zhuǎn)換時(shí)可能發(fā)生50例2.8:已知inta=7;floatx=2.5,y=4.7;計(jì)算表達(dá)式的值512.7.2賦值表達(dá)式定義:賦值運(yùn)算符將一個(gè)變量和表達(dá)式連接起來構(gòu)成的式子一般形式:<變量>=<表達(dá)式>將表達(dá)式的值求出來,賦給左邊的變量,使變量的值為表達(dá)式的值
a=3;d=func();c=d+2;x=20/4;52表達(dá)式的值的類型以變量的類型為主
intx;x=10+30/7+1.5doubley;y=10+30/7+100賦值表達(dá)式的值又可以作為另外一個(gè)賦值表達(dá)式賦值表達(dá)式也可以包含復(fù)合賦值運(yùn)算符532.7.3關(guān)系表達(dá)式和邏輯表達(dá)式關(guān)系表達(dá)式:用關(guān)系運(yùn)算符將兩個(gè)運(yùn)算對(duì)象(算術(shù)表達(dá)式、賦值表達(dá)式、關(guān)系表達(dá)式和邏輯表達(dá)式等)連接起來構(gòu)成的式子a+3>b+4(a>b)>(c=2)(ch!=getch
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 種植體牙冠協(xié)議書
- 青春向上創(chuàng)造奇跡
- 2024年網(wǎng)絡(luò)安全保障合同標(biāo)的保障范圍與技術(shù)措施
- 第21課《古代詩(shī)歌五首:望岳》課件 【知識(shí)精研】統(tǒng)編版語(yǔ)文七年級(jí)下冊(cè)
- 廣東省廣州市黃埔區(qū)2023-2024學(xué)年七年級(jí)上學(xué)期期末道德與法治試題(答案)
- 線段、射線、直線 (說課稿)-2024-2025學(xué)年四年級(jí)上冊(cè)數(shù)學(xué)人教版
- 振興民族青春引領(lǐng)時(shí)代
- 2024版材料運(yùn)輸合同2
- 青島版信息技術(shù)四年級(jí)上冊(cè) 第9課繽紛畫筆刷刷刷說課稿
- 少年立志引領(lǐng)時(shí)代發(fā)展
- 多維閱讀第14級(jí) Ollie and Ruby 奧利和魯比
- 供應(yīng)鏈案例亞馬遜歐洲公司分銷戰(zhàn)略課件
- 石化行業(yè)八大高風(fēng)險(xiǎn)作業(yè)安全規(guī)范培訓(xùn)課件
- 神經(jīng)生物學(xué)(新版)課件:第九講-神經(jīng)科學(xué)進(jìn)展
- GGD低壓柜檢驗(yàn)報(bào)告
- DB3302T 1131-2022企業(yè)法律顧問服務(wù)基本規(guī)范
- 2022年自愿性認(rèn)證活動(dòng)獲證組織現(xiàn)場(chǎng)監(jiān)督檢查表、確認(rèn)書
- 醫(yī)院藥物臨床試驗(yàn)倫理委員會(huì)倫理審查申請(qǐng)及受理表
- 資產(chǎn)收購(gòu)法律意見書范本
- 中南大學(xué)年《高等數(shù)學(xué)上》期末考試試題及答案
- 空壓機(jī)日常操作標(biāo)準(zhǔn)作業(yè)指導(dǎo)書
評(píng)論
0/150
提交評(píng)論