第2章C語言基礎-運算符及其表達式_第1頁
第2章C語言基礎-運算符及其表達式_第2頁
第2章C語言基礎-運算符及其表達式_第3頁
第2章C語言基礎-運算符及其表達式_第4頁
第2章C語言基礎-運算符及其表達式_第5頁
已閱讀5頁,還剩24頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

模仿練習#include<stdio.h>voidmain(){ intn1=10; floatn2=3.7; charn3=’a’; printf(“n1=%d\n”,n1);

printf(“n2=%f\n”,n2);

printf(“n3=%c\n”,n3);printf(“n3=%d\n”,n3);}C語言數(shù)據(jù)類型數(shù)據(jù)類型空類型void指針類型構(gòu)造類型數(shù)組類型共用類型union文件類型file結(jié)構(gòu)類型struct基本類型字符型char枚舉型enum整型短整型shortint整型int長整型longint單精度型float雙精度型double浮點型(實型)長雙精度型longdouble常量常量是在程序執(zhí)行期間可以不經(jīng)聲明而直接引用的數(shù)據(jù)(保持不變的量)常量用于定義具有如下特點的數(shù)據(jù):在程序中保持不變在程序內(nèi)部頻繁使用需要用比較簡單的方式替代某些值注意:指數(shù)形式的浮點常量E或e前面必須有數(shù)字,E后面必須為整數(shù)。因此,E8、6E7.8都不是合法的浮點常量。變量定義格式類型關(guān)鍵字

變量名表(標識符);inta,b,c;變量的三要素拓展任務練習:1、提出任務:編寫一個c程序,輸入a、b、c3個值,輸出其平均值。2、分析任務:要完成這個任務可以分解成以下幾個要解決的問題:1)這個問題需要幾步操作(程序)2)怎樣計算平均值(算法)3)用c語言怎樣表達(c的語法和結(jié)構(gòu))4)a、b、c3個值是整數(shù)還是實數(shù),它們的平均值是什么類型的數(shù),應該怎么定義5)怎樣讓計算機運行這個程序(開發(fā)環(huán)境和使用)3、完成任務:請同學根據(jù)本節(jié)課的內(nèi)容,分組討論完成任務。

2.3運算符和表達式掌握C語言基本運算符的使用理解運算符的優(yōu)先級熟練掌握C語言基本表達式的使用掌握表達式中數(shù)據(jù)類型的轉(zhuǎn)換C語言的表達式Sum=num1+num2操作數(shù)運算符表達式Z=(X*2)+(5–Y)

C語言的表達式操作數(shù)操作數(shù)表達式表達式表達式運算符C語言的表達式表達式由操作數(shù)和運算符的組合而成表達式中的操作數(shù)可以是變量、常量或者子表達式表達式的主要類型有:

算術(shù)表達式

賦值表達式關(guān)系表達式邏輯表達式條件表達式

逗號表達式舉例【例2-7】求解算術(shù)表達式的值#include<stdio.h>voidmain(){ intn1=1,n2=2; floatn3=3.5,n4=2.5,s;//定義5個變量,其中s用來保存表達式結(jié)果

s=(float)(n1+n2)/2+(int)n3%(int)n4; printf("s=%f\n",s);//按實型格式輸出表達式的值}算術(shù)表達式1.單目運算符運算符名稱運算規(guī)則運算對象運算結(jié)果舉例x的值a的值-取負取負值整型或?qū)嵭驼突驅(qū)嵭蚢=1;x=-a;x=-1a=1++增1(前綴)先增值后引用整型、字符型或?qū)嵭妥兞空?、字符型或?qū)嵭妥兞縜=1;x=++a;x=2a=2++增1(后綴)先引用后增值a=1;x=a++;x=1a=2--減1(前綴)先減值后引用a=1;x=--a;x=0a=0--減1(后綴)先引用后減值a=1;x=a--;x=1a=0自增自減四個符號同級,高于取負,只能作用于變量。由算術(shù)運算符連接起來的運算式稱為算術(shù)表達式算術(shù)表達式2.雙目運算符運算符名稱運算規(guī)則運算對象運算結(jié)果舉例表達式值*乘乘法整型或?qū)嵭驼突驅(qū)嵭?.5*3.07.5/除除法2.5/50.5%模(求余)整數(shù)取余整型整型10%31+加加法整型或?qū)嵭驼突驅(qū)嵭?.5+1.33.8-減減法2.5-1.31.2注意:雙目運算符優(yōu)先級:*、/、%同級,+、-同級,并且前者高于后者。雙目運算符優(yōu)先級低于單目運算符。兩個整數(shù)相除的結(jié)果仍為一個整數(shù)。例如:13/5的值為2,而不是2.6。算術(shù)表達式3.強制類型轉(zhuǎn)換運算符注意:強制類型轉(zhuǎn)換運算符高于雙目運算符,但低于取負運算。該類型不會改變其后邊表達式的類型。如上例(int)x;中表達式的值為3,但x的值仍然為3.4。同級的算術(shù)運算符的結(jié)合性是自左向右。運算符名稱運算規(guī)則運算對象運算結(jié)果舉例表達式值(類型)類型轉(zhuǎn)換轉(zhuǎn)換為指定類型整型或?qū)嵭驼突驅(qū)嵭蚮loatx=3.4;(int)x;3做一做運行下列程序,分析運行結(jié)果,理解單目運算符的使用規(guī)則#include<stdio.h>voidmain(){ intm=5,n; n=m++;//m++表示自增后置方式,m的值先賦值給n,再自加1 printf("n=%d,m=%d\n",n,m); m=5; n=++m;//++m表示自增前置方式,m先自加1,再賦值給n printf("n=%d,m=%d\n",n,m); m=5; n=m--;//m--表示自減后置方式,m的值先賦值給n,再自減1 printf("n=%d,m=%d\n",n,m); m=5; n=--m;//--m表示自減前置方式,m先自減1,再賦值給n

printf("n=%d,m=%d\n",n,m);}#include<stdio.h>voidmain(){ inti=5,j=5; printf("++i:%d,j++:%d\n",++i,j++);}#include<stdio.h>voidmain(){ inti=5; printf("%d,%d,%d\n",++i,++i,++i);}【例2-8】求解賦值表達式的值#include<stdio.h>voidmain(){ intx,y;

x=y=1; x+=5; y-=-5; printf("x=%d,y=%d\n",x,y);}賦值表達式注意:賦值運算符的優(yōu)先級比較低,僅高于逗號運算符。它沒有相等的意義。賦值運算符的結(jié)合性是自右向左。例如:x=x+1是合法的,它的含義是取出變量x的值加1,再存放到變量x中。運算符名

稱運算規(guī)則運算對象運算結(jié)果舉

例表達式值=賦值給變量賦值任何類型任何類型a=2;2由賦值運算符連接起來的運算式稱為賦值表達式賦值表達式復合運算符注意:復合運算符中5個運算符同級,但低于雙目運算符。1a=3;a-=2;a-=ba=a-b自反減-=5a=3;a+=2;整型或?qū)嵭驼突驅(qū)嵭蚢+=ba=a+b自反加+=1a=3;a%=2;整型整型a%=ba=a%b自反模%=1a=3;a/=2;a/=ba=a/b自反除/=6a=3;a*=2;整型或?qū)嵭驼突驅(qū)嵭蚢*=ba=a*b自反乘*=表達式值舉例運算結(jié)果運算對象運算規(guī)則名稱運算符做一做編寫C程序,完成如下運算:當i=10時,計算表達式i+=i-=i*i的值【例2-9】求解逗號表達式的值#include<stdio.h>voidmain(){ intn1,n2; n1=n2=0;

n2=(n1=3*8,n1+5); printf("n1=%d,n2=%d\n",n1,n2);}逗號表達式注意:逗號運算符的優(yōu)先級最低,在只允許出現(xiàn)一個表達式的地方出現(xiàn)多個表達式時,常采用逗號表達式的形式。運算符名稱運算規(guī)則運算對象運算結(jié)果舉

例表達式值,逗號最后一個表達式的值表達式最后一個表達式的值a=3*8,a+529逗號表達式:用逗號“,”將兩個及以上的表達式連接起來的式子。其值為最后一個表達式的值其一般形式為:表達式1,表達式2做一做編寫C程序,完成如下運算:當a=10,b=0時,計算逗號表達式b=(a+=5,a+5)的值舉例【例2-10】假定m為float型,n為int型,分析表達式:19+'a'-2.5+m/n運算后的數(shù)據(jù)類型。各種數(shù)據(jù)類型之間的轉(zhuǎn)換當不同類型的數(shù)據(jù)在運算符的作用下構(gòu)成表達式時要進行類型轉(zhuǎn)換,即把不同類型按規(guī)則轉(zhuǎn)換成同一類型,再進行運算。橫向箭頭表示必定的轉(zhuǎn)換??v向箭頭表示當運算對象為不同類型時轉(zhuǎn)換的方向,箭頭方向只表示數(shù)據(jù)類型由低向高轉(zhuǎn)換,不要以為int型先轉(zhuǎn)換成unsigned型,再轉(zhuǎn)換為long型。浮點型轉(zhuǎn)換成整型時,將截去小數(shù)部分。雙精度浮點型轉(zhuǎn)換成單精度時,將進行四舍五入。34種運算符算術(shù)運算符:+-*/%++--關(guān)系運算符:<<===>>=!=邏輯運算符:!&&||位運算符:<<>>~|^&賦值運算符:=及其擴展條件運算符:?:逗號運算符:,指針運算符:*&求字節(jié)數(shù):sizeof強制類型轉(zhuǎn)換:(類型)分量運算符:.->下標運算符:[]其它:()-練習2.9上機實訓實訓1數(shù)據(jù)類型、變量、表達式【實訓目的】1)深入理解C語言數(shù)據(jù)類型的意義2)掌握變量聲明和初始化的意義和方法3)掌握算術(shù)表達式、賦值表達式的運算【實訓內(nèi)容】見教材50頁實訓要求1、用實訓報告紙完成,并將報告紙上的內(nèi)容填完整。課程名稱:計算機C語言基礎

實訓名稱:數(shù)據(jù)類型、變量、表達式2、將實訓內(nèi)容的每一步的內(nèi)容按要求寫清楚,并寫出完成情況。小結(jié)運算符及優(yōu)先級

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論