版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、項目一項目一 學(xué)生成績的平均分與總分的計算學(xué)生成績的平均分與總分的計算 項目要求項目要求輸入三個學(xué)生的成績,求他們的總分及平均分。項目分析項目分析第一必須要學(xué)會輸入成績及輸出結(jié)果;第二必須對輸入的成績進行總分及平均分的計算。所以,將這一項目分成二個任務(wù)介紹。 任務(wù)任務(wù)1 學(xué)生成績的輸入、輸出學(xué)生成績的輸入、輸出一、問題情景一、問題情景一個班進行了一次考試,現(xiàn)要將幾個學(xué)生的成績輸入電腦,并按要求輸出。二、具體實現(xiàn)二、具體實現(xiàn)#include stdio.h /文件預(yù)處理main() / 函數(shù)名 /函數(shù)體開始int x,y,z; /定義三個變量x,y,zprintf(請輸入三個學(xué)生的成績); sc
2、anf(%d%d%d,&x,&y,&z); /*輸入三個學(xué)生的成績*/printf(輸出三個學(xué)生的成績); printf(x=%d,y=%d,z=%dn,x,y,z); /輸出三個變量x,y,z的值 /函數(shù)體結(jié)束程序運行結(jié)果:從上面這段程序可分析出:首先,要了解C語言的結(jié)構(gòu); 第二,要了解C語言的運行環(huán)境;第三,要懂得如何定義變量,輸入輸出語句。相關(guān)知識相關(guān)知識 v(一一) C程序的結(jié)構(gòu)程序的結(jié)構(gòu)#include “stdio.h”int x,y;main( )x=1;y=x+2;printf(“x=%dny=%dn”,x,y);文件預(yù)處理主函數(shù)數(shù)據(jù)聲明部分語句部分(二
3、二) C程序運行環(huán)境及運行方法程序運行環(huán)境及運行方法 點擊【文件】【新建】,出現(xiàn)的對話框中用鼠標點擊【文件】【C+Source File】,然后更改文件所保存的目錄(若需要更改),需入文件名,然后點擊【確定】。輸入程序。當(dāng)程序輸入完畢后,點擊 或按F7,進行編譯和連接。如果沒有錯誤,點擊 或按Ctrl+F5,進行運行,就能得出程序運行的結(jié)果。 (三三) 數(shù)據(jù)類型數(shù)據(jù)類型C語言的數(shù)據(jù)類型可分為:v 基本類型:又分為整型、實型、字符型和枚舉型四種。其中枚舉型這里暫不介紹。v 構(gòu)造類型:又分為數(shù)組類型、結(jié)構(gòu)類型和共用類型三種。v 指針類型。v 空類型?!境A俊吭诔绦蜻\行中,其值不能被改變的量稱為常量
4、。常量可分為:整型常量。例1,23,-8。實型常量。例 1.23,-9.8,.123,23.,0.0,2.23e-4(表示2.2310-4),0.23e3(表示0.23103),0.23E-3(表示0.2310-3),1.23E3(表示1.23103)。字符常量。例 A,+,8。符號常量。例 #define PI 3.14。則PI是一個符號常量,其值為3.14,它不能在程序中被改變。(請見任務(wù)三中的例1-15改)【變量】所謂變量就是在程序運行過程中,其值可以被改變的量。一個變量由兩個要素組成。即變量名和變量值。變量名:每一個變量都必須有一個名字,即變量名。變量名的命名規(guī)則:由字母或下劃線開頭,
5、后面跟字母、數(shù)字和下劃線。其有效長度,隨系統(tǒng)而異,但至少前8個字符有效。如果超長,則超長部分被舍棄。 C語言的變量名區(qū)分大小寫。即同一字母的大小寫,被認為給是兩個不同的變量。例Total、total、toTal是不同的變量名。給變量名命名時,最好遵循“見名知意”這一基本原則。例如,name/xm(姓名)、sex/xb(性別)、age/nl(年齡)、salary/gz(工資)?!咀兞俊克^變量就是在程序運行過程中,其值可以被改變的量。一個變量由兩個要素組成。即變量名和變量值。變量名:每一個變量都必須有一個名字,即變量名。變量名的命名規(guī)則:由字母或下劃線開頭,后面跟字母、數(shù)字和下劃線。其有效長度,
6、隨系統(tǒng)而異,但至少前8個字符有效。如果超長,則超長部分被舍棄。 【變量定義與初始化】數(shù)據(jù)類型 變量名=初值,變量名2=初值2;例如:int x=1,y=2,z=3; float a=1.1,b=1.2,c=-0.1; char ch1=A,ch2=*;(四四) 格式化輸出格式化輸出printf()函數(shù)函數(shù)printf()函數(shù)的一般格式printf(“格式字符串”,輸出項表);1. 常用的格式字符串有:(1) 格式指示符: %d 帶符號十進制整數(shù)。 %f帶符號十進制小數(shù)形式(默認6位小數(shù))。 %c輸出一個字符。(2) 轉(zhuǎn)義字符例1-1中的printf()函數(shù)中的”n”就是轉(zhuǎn)義字符,輸出時產(chǎn)生一個
7、“換行”。(3) 普通字符除格式指示符和轉(zhuǎn)義字符之外的其它字符。例1-1中的printf(“x=%d,y=%d,z=%dn”,x,y,z);的“x=”、“y=”、“z=”,格式字符串中的普通字符,原樣輸出。在漢字系統(tǒng)環(huán)境下,允許使用漢字。2. 輸出項表輸出項表是可選的。在輸出項中,列出要輸出的任意類型的數(shù)據(jù)。如果要輸出的數(shù)據(jù)不止一個,相鄰2個之間用逗號分開。 (1)printf(“我是一個學(xué)生n”); /沒有輸出項(2)printf(“%d”,1+2); /輸出1+2的值(3)printf(“a=%d b=%dn”,1,1+3); /輸出1的值和1+3的值注意:printf(“%d %fn”,
8、1.212,5) ; 是錯誤的。 #include “stdio.h” main() printf(“%d %fn”,1.234,6);【例【例1-3】格式化輸出?!扛袷交敵觥?include stdio.h main() int x=1,y=2,z=3; /*定義x,y,z三個整型變量,并將它們的初值賦為 1,2,3*/float a=1.1,b=2.3; char c1=A,c2=B; /*定義c1,c2二個字符型變量,并將它們的初值賦為A和B*/printf(輸出x,y,z的值n); /原樣輸出x,y,z的值后換行printf(x=%d,y=%d,z=%dn,x,y,z); /輸出x=
9、1,y=2,z=3后換行printf(輸出a,b的值n); printf(a=%f,b=%fn,a,b); printf(輸出c1,c2的值n); printf(c1=%c,c2=%cn,c1,c2); /輸出c1=A,c2=B后換行程序的運行結(jié)果為:(五五)格式化輸入格式化輸入scanf()函數(shù)函數(shù)1. scanf()函數(shù)的功能:從鍵盤上接收格式化輸入。2. scanf()函數(shù)的一般格式scanf(“格式字符串”,輸入項首地址表);格式字符串。格式字符串可以包含3種類型的字符:格式字符,空白字符(空格、Tab鍵和回車鍵)和非空白字符(又稱普通字符)。 格式指示符與printf()函數(shù)的相似:
10、%d,十進制帶符號的整型數(shù);%f,十進制帶符號的實型數(shù);%c,輸入一個字符。 空白字符作為相鄰2個輸入數(shù)據(jù)的缺省分隔符。 非空白字符在輸入數(shù)據(jù)時,必須原樣一起輸入。輸入項首地址表由若干個輸入項首地址組成,相鄰2個輸入項地址之間用逗號分開。變量首地址的表示方法如下:&變量名其中“&”是地址運算符。例如,在例1-1中scanf(“%d%d%d”,&x,&y,&z)中的“&x”是指變量x在內(nèi)存中的首地址。其功能是從鍵盤上輸入3個整型數(shù),分別存入&x,&y,&z起始的存儲單元中,即輸入三個整數(shù)分別賦給x,y,z。 scanf(“%
11、d,%d”,&a,&b); scanf(“%d%d”,&a,&b); 有兩個人有兩個人A,B,在數(shù)學(xué)考試中獲得,在數(shù)學(xué)考試中獲得87和和76的成績,請輸入的成績,請輸入A,B兩人的代號及成績,輸出成績兩人的代號及成績,輸出成績。 分析:此題就是考查輸入輸出語句,注意整數(shù)輸入/輸入的格式用%d,字符變量的輸入/輸出格式用%c,同時注意輸入語句中的兩個數(shù)據(jù)之間用什么符號隔開,則在程序運行輸入數(shù)據(jù)時也要用同樣的符號隔開兩個數(shù)據(jù)。#include stdio.hmain()char c1,c2;int x,y;printf(請輸入A的成績及代號:);scanf(%d:%
12、c,&x,&c1);printf(請輸入B的成績及代號:);scanf(%d:%c,&y,&c2);printf(輸出A的代號及成績:);printf(%c:%dn,c1,x);printf(輸出B的代號及成績:);printf(%c:%dn,c2,y);程序運行結(jié)果為:任務(wù)任務(wù)2 總分及平均分的計算總分及平均分的計算一、問題情景一、問題情景一個班進行了一次考試,現(xiàn)要將幾個學(xué)生的成績輸入電腦,并計算他們的平均分及總分,然后按要求輸出。二、具體實現(xiàn)二、具體實現(xiàn)#include stdio.h main() int x,y,z; float sum,avg; /定義
13、二個實型變量sum,avgprintf(請輸入三個學(xué)生的成績); scanf(%d%d%d,&x,&y,&z); /*輸入三個學(xué)生的成績*/sum=x+y+z; /將x+y+z的值賦給sumavg=sum/3; /將sum/3的值賦給avgprintf(請輸出三個學(xué)生的總成績及平均分為); /輸出提示printf(sum=%.2f,avg=%.2fn,sum,avg); /輸出二個變量sum及avg的值 程序的執(zhí)行情況如下 :首先,算術(shù)運算和算術(shù)表達式; 第二,賦值運算和賦值表達式;另外,還需掌握在本任務(wù)中沒有體現(xiàn),但在C程序中卻經(jīng)常要用到的C語言特有的運算和運算符。三
14、、相關(guān)知識三、相關(guān)知識(一一) 算術(shù)運算與算術(shù)表達式算術(shù)運算與算術(shù)表達式1. 五種基本的算術(shù)運算符 +(加法)、-(減法)、*(乘法)、/(除法)、%(求余數(shù))這里,需要特別提出的是:(1)關(guān)于除法運算/ C語言規(guī)定,兩個整數(shù)相除,其商為整數(shù),小數(shù)部分被舍棄。例如:5/2=2。 如果商為負數(shù),則取整的方向隨系統(tǒng)而異。但大多數(shù)的系統(tǒng)采取“向零取整”原則,換句話說,取其整數(shù)部分。例如:-5/3=-1。(2)關(guān)于求余數(shù)運算%要求兩側(cè)的操作數(shù)均為整型數(shù)據(jù),否則出錯。例如:5%3=2,3%5=3,-5%3=-2,-5%(-3)=-2。但是,5.2%3是語法錯。(一一) 算術(shù)運算與算術(shù)表達式算術(shù)運算與算術(shù)
15、表達式2. 表達式和算術(shù)表達式(1)表達式的概念用運算符和括號將運算對象(常量、變量和函數(shù))連接起來的、符合C語言語法規(guī)則的式子,稱為表達式。單個常量、變量,可以看作是表達式的一種特例。將單個常量、變量構(gòu)成的表達式稱為簡單表達式,其他表達式稱之為復(fù)雜表達式。(2)算術(shù)表達式的概念表達式中的運算符都是算術(shù)運算符。例如:3+2*5、(x+y)/2+3、5%2+3都是算術(shù)表達式。3. 運算符的優(yōu)先級與結(jié)合性(1)算術(shù)運算符的優(yōu)先級是:先*,/,%,再+,-。(2)有括號的先做括號。(一一) 算術(shù)運算與算術(shù)表達式算術(shù)運算與算術(shù)表達式 v4. 數(shù)據(jù)類型轉(zhuǎn)換高 double float long unsi
16、gned 低 int char,short(二二) 賦值運算和賦值表達式賦值運算和賦值表達式1. 賦值運算賦值符號“=”就是賦值運算符,它的作用是將一個表達式的值賦給一個變量。賦值運算符的一般形式為:變量=賦值表達式2. 復(fù)合賦值運算復(fù)合賦值運算是C語言特有的一種運算。復(fù)合賦值運算的一般格式為:變量 復(fù)合運算符 表達式復(fù)合算術(shù)運算符有五種,分別是:+=,-=,*=,/=,%=例如:x=5 /將5賦給變量xx=6+7 /將6+7的值賦給變量x 5=x 是錯誤的x+y=z也是錯誤的。 x+=3 等價于 x=x+3 x+=5+8 等價于 x=x+(5+8) x*=y+2 等價于 x=x*(y+2)
17、x/=x+y 等價于x=x/(x+y) x/=8 等價于x=x/8 x%=7 等價于 x=x%7 x%=(4-2) 等價于x=x%(4-2)【例【例1-12】閱讀下列程序】閱讀下列程序#include stdio.hmain()int x,y,z; float a,b,c; /定義三個單精度型變時a,b,cx=1; /將1賦給變量x,即x的值為1y=2; z=3; a=1.1; /將1.1賦給變量a,即a的值為1.1b=2.1;c=3.5;x=x+y+z; /將x+y+z的值賦給變量x, x的值為(1+2+3),即x=6printf(x=%dn,x); y*=y+1; /將y*(y+1)賦給y
18、, y=2*(2+1),即y=6printf(y=%dn,y); z=(int)a%(int)b; /z=1%2,即z=1printf(z=%dn,z); a+=a+b+c; /a=a+(a+b+c), a=1.1+(1.1+2.1+3.5),即a=9.9printf(a=%fn,a); 程序執(zhí)行情況如下:(三三) C語言特有的運算和運算符語言特有的運算和運算符1. 自增(+)、自減(-)運算作用:自增運算使單個變量的值增1,自減運算使單個變量的值減1.用法與運算規(guī)則自增、自減運算符都有兩種用法:1) 前置運算運算符放在變量之前:+變量、-變量先使變量的值增(減)1,然后再以變化后的值參與其他
19、支算,即先增減,后運算。 y=+x+2; /x先增1(=5),然后與2的和再賦給y(=7) printf(x=%d y=%dn,x,y); z=-x; /x先減1(=4),然后再賦給z(=4)printf(x=%d z=%dn,x,z); -x; /x=x-1,即x=3printf(x=%dn,x); /輸出x=3后換行#include stdio.hmain()int x=2,y,z;printf(x=%dn,x); y=+x; /x先增1(=3),然后再賦給y(=3) printf(x=%d y=%dn,x,y); +x; /x=x+1,即x=4printf(x=%dn,x);后置運算后置
20、運算變量變量+、變量、變量 #include stdio.hmain()int x=2,y,z;printf(x=%dn,x); y=x+; /先將x的值(2)賦給y(=2) ,然后x再自增(3) printf(x=%d y=%dn,x,y); x+; /x=x+1,即x=4printf(x=%dn,x); y=(x+)+2; /先將x+2賦給y(=6),然后x再自增(5) printf(x=%d y=%dn,x,y); z=x-; /先將x的值(5)賦給z(=5),然后x再自減(4)printf(x=%d z=%dn,x,z); x-; /x=x-1,即x=3printf(x=%dn,x);
21、 自增、自減運算符不能用于常量和表達式。例如:5+、-8、+(a+b)都是錯誤的。2. 逗號運算(,)及其表達式逗號運算(,)及其表達式C語言提供一種用逗號運算符“,”連接起來的式子,稱為逗號表達式。逗號運算符又稱順序求值運算符。(1) 一般形式:表達式1,表達式2,表達式n.(2) 求解過程:自左至右,依次計算各表達式的值,“表達式n”的值即為整個逗號表達式的值。例如:逗號表達式“a=3*5,a*4”的值=60:先求解a=3*5,得,a=15;再求a*4=60,所以逗號表達式的值為60。又例如:逗號表達式“(a=2+1,a*5),a+8”的值=11,先求解a=2+1,得a=3,再求a*5=1
22、5;最后求解a+8=11,所以逗號表達式的值=11任務(wù)任務(wù)3 舉一反三舉一反三【例1-15】輸入圓半徑,求圓的面積和周長。的值取3.14. 分析:因為根據(jù)圓半徑,求圓的面積和周長,所以要定義三個變量,半徑r,面積s和周長c;考慮到輸入的圓半徑可能會有小數(shù),所以這三個變量不妨都定義為單精度型float。定義變量r,s,c輸入變量rs=3.14*r*rc=2*3.14*r輸出s,c#include stdio.hmain()float r,s,c;printf(請輸入圓的半徑r:);scanf(%f,&r);s=3.14*r*r;c=2*3.14*r;printf(圓的面積s為:%fn圓的
23、周長c為%fn,s,c);流程圖符號常量符號常量 #define PI 3.14 意思是定義一個符號常量PI,其值為3.14。符號常量的命名規(guī)則與變量名一樣,但習(xí)慣上,符號常量常用大寫字母表示。#include stdio.h#define PI 3.14 /定義一個符號常量PI,其值為3.14main()float r,s,c;printf(請輸入圓的半徑r:);scanf(%f,&r);s=PI*r*r;c=2*PI*r;printf(圓的面積s為:%fn圓的周長c為%fn,s,c);【例【例1-16】輸入三角形三邊的長,求三角形的周長及面積?!枯斎肴切稳叺拈L,求三角形的周長及面積。 分析:輸入三角形三邊的長,所以顯然要定義三個變量a,b,c,同時還要定義三角形的周長c 及面積s,由于在求三角形的面積時要用的海倫公式s=其中是三角形的二分之一
溫馨提示
- 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)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 辦公用房租賃合同(一)
- 2025年個人商店租賃合同范文(2篇)
- 農(nóng)村土地轉(zhuǎn)讓合同
- 新房銷售代理合同條款
- 2025三方購銷協(xié)議合同
- 2024年房屋和土木工程產(chǎn)品項目資金申請報告
- N-Nitroso-clonidine-生命科學(xué)試劑-MCE-2307
- IRF1-IN-1-生命科學(xué)試劑-MCE-6527
- 二零二五年度文化場館消毒防疫服務(wù)合同
- 二零二五年度電動助力車租賃與充電樁安裝合同
- GB/T 44143-2024科技人才評價規(guī)范
- 對醫(yī)院領(lǐng)導(dǎo)的批評意見怎么寫更合適范文(6篇)
- 賬期協(xié)議書賬期合同書
- 2024年常德職業(yè)技術(shù)學(xué)院單招職業(yè)適應(yīng)性測試題庫完整
- 天津市河?xùn)|區(qū)2023-2024學(xué)年九年級上學(xué)期期末數(shù)學(xué)試題
- 工程防滲漏培訓(xùn)課件
- 黑龍江省哈爾濱市2024年數(shù)學(xué)八年級下冊期末經(jīng)典試題含解析
- 牛津3000核心詞匯表注釋加音標1-4 完整版
- 高中英語以讀促寫教學(xué)策略與實踐研究課件
- 金屬表面處理中的冷噴涂技術(shù)
- 河北省石家莊市2023-2024學(xué)年高一上學(xué)期期末教學(xué)質(zhì)量檢測化學(xué)試題(解析版)
評論
0/150
提交評論