版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
C語(yǔ)言程序設(shè)計(jì)教材、參考書與課時(shí)安排教材C語(yǔ)言程序設(shè)計(jì)唐新來(lái)李春貴編科技出版社參考書C語(yǔ)言程序設(shè)計(jì)張向利等編廣西師范大學(xué)出版社C語(yǔ)言程序設(shè)計(jì)何欽銘人民郵電出版社C語(yǔ)言程序設(shè)計(jì)譚浩強(qiáng)
清華大學(xué)出版社課時(shí)安排
理論+試驗(yàn)課:56學(xué)時(shí)(3.5學(xué)分)
教學(xué)要求掌握程序設(shè)計(jì)語(yǔ)言的基本知識(shí)常用算法初步的程序設(shè)計(jì)能力學(xué)習(xí)方法自主學(xué)習(xí)重視上機(jī)實(shí)踐關(guān)于考試●總評(píng)成績(jī):平時(shí)學(xué)習(xí)表現(xiàn)+實(shí)驗(yàn)成績(jī)+期末考試成績(jī)(20%)
(30%)(50%)●六月份參加廣西壯族自治區(qū)二級(jí)C語(yǔ)言統(tǒng)試●評(píng)分標(biāo)準(zhǔn)
(期末考試評(píng)分標(biāo)準(zhǔn)參見(jiàn)命題方案)?
學(xué)習(xí)表現(xiàn)(100分)基本原則:基本分50分,表現(xiàn)好累計(jì)加分至100分,表現(xiàn)不好累
計(jì)減分至0分,如果遲到、早退、曠課次數(shù)等違紀(jì)扣分超過(guò)
學(xué)習(xí)表現(xiàn)的總分值,則在期末總評(píng)分里酌情扣分??鄯猪?xiàng)目:玩游戲一次扣15分(三次以上者取消本課程考核資
格),睡覺(jué)一次扣5分,影響課堂秩序的行為如說(shuō)話等一次
扣5分。學(xué)生曠課一次扣15分,遲到及早退一次各扣5分。加分項(xiàng)目:正確回答問(wèn)題一次加2分,主動(dòng)回答問(wèn)題一次加
5分,在課堂上能起積極引導(dǎo)作用加5分。?
作業(yè)(100分)作業(yè)做在作業(yè)本上,保質(zhì)保量完成每章(共7章)作業(yè)得70分;老師每抽查、提問(wèn)一次,酌情加1~10分。第1章計(jì)算機(jī)和C編程入門1.1計(jì)算機(jī)系統(tǒng)與程序設(shè)計(jì)語(yǔ)言機(jī)器語(yǔ)言匯編語(yǔ)言高級(jí)語(yǔ)言面向過(guò)程面向?qū)ο驝PU指令系統(tǒng),由0、1序列構(gòu)成的指令碼組成如:10000000加10010000減用助記符號(hào)描述的指令系統(tǒng)如ADDA,B面向機(jī)器的語(yǔ)言程序設(shè)計(jì)是數(shù)據(jù)被加工的過(guò)程客觀世界可以分類,對(duì)象是類的實(shí)例對(duì)象是數(shù)據(jù)和方法的封裝對(duì)象間通過(guò)發(fā)送和接受消息發(fā)生聯(lián)系程序設(shè)計(jì)關(guān)鍵是定義類,并由類派生對(duì)象馮.諾依曼結(jié)構(gòu):計(jì)算機(jī)運(yùn)算器控制器存儲(chǔ)器主機(jī):I/O設(shè)備:鍵盤、顯示器等中央處理器CPU
●高級(jí)語(yǔ)言通用語(yǔ)言
fortran、basic
VB
C
C++(VC++BC++)數(shù)據(jù)庫(kù)語(yǔ)言
foxbase、FoxPro
SQL
DelphiPowerbuilder網(wǎng)頁(yè)制作工具HTMLJava●高級(jí)語(yǔ)言程序的開(kāi)發(fā)過(guò)程編輯編譯執(zhí)行(一般包括七個(gè)步驟:p4~6)預(yù)處理器編譯器鏈接器C語(yǔ)言及其標(biāo)準(zhǔn)BCPL→B→
C→
ANSIC標(biāo)準(zhǔn)
(C89)→C99●C語(yǔ)言的特點(diǎn)C語(yǔ)言允許直接訪問(wèn)計(jì)算機(jī)內(nèi)部地址,能比其他語(yǔ)言更容易執(zhí)行硬件操作。用于解決大多數(shù)應(yīng)用領(lǐng)域中的問(wèn)題。語(yǔ)法限制不太嚴(yán)格,程序設(shè)計(jì)自由度大,但同時(shí)不易查找錯(cuò)誤。C語(yǔ)言中大小寫字母代表不同含義。中級(jí)語(yǔ)言
任何一部機(jī)器都是用部件組裝而成的,計(jì)算機(jī)程序也是由一些部件構(gòu)建起來(lái)的。
C語(yǔ)言程序部件是函數(shù)。即,設(shè)計(jì)C語(yǔ)言程序就是設(shè)計(jì)它的構(gòu)成函數(shù)。1.2算法的概念與表示程序用編程語(yǔ)言編寫,完成特定功能的語(yǔ)句的集合。編程步驟:1.明確問(wèn)題2.問(wèn)題:若干具體步驟(算法)3.算法:程序4.上機(jī)調(diào)試運(yùn)行算法解題方法或解題步驟的精確描述。①文字②圖形(符號(hào))常用的算法描述方法①帶序號(hào)的自然語(yǔ)言描述:易懂卻不直觀,不嚴(yán)格②流程圖:靈活、自由、形象、直觀,可表示任何算法處理輸入輸出起止判斷流程線連接點(diǎn)算法的特性:
有窮性、確定性、可行性、輸入、輸出算法描述:③N-S圖(盒圖):特點(diǎn):無(wú)流程線,算法的所有處理步驟都寫在一個(gè)大矩形框中(表示簡(jiǎn)單,符合結(jié)構(gòu)化思想)直到型當(dāng)型④偽代碼:用介于自然語(yǔ)言與計(jì)算機(jī)語(yǔ)言之間的文字及符號(hào)描述算法(方便、易懂,便于向計(jì)算機(jī)語(yǔ)言過(guò)度)例:從鍵盤中輸入100個(gè)整數(shù),對(duì)其中的正整數(shù)進(jìn)行累加,最后輸出結(jié)果。
●算法描述(自然語(yǔ)言)⑴輸入一個(gè)數(shù);⑵如果該數(shù)>0,累加它;⑶如果100個(gè)數(shù)沒(méi)有輸入完,轉(zhuǎn)步驟(1);⑷輸入完100個(gè)數(shù)后,輸出累加和?!袼惴枋?流程圖)起止框處理框判斷框流向線
開(kāi)始
輸入一個(gè)數(shù)
該數(shù)>0累加輸入完100個(gè)數(shù)輸出累加和結(jié)束YYNN●算法描述(N-S流程圖)算法的C語(yǔ)句實(shí)現(xiàn)voidmain(){intx; /*存放輸入數(shù)的單元*/intcount; /*存放輸入個(gè)數(shù)的單元*/intsum; /*存放累加和的單元*/count=0;sum=0;/*工作單元初值*/do{ scanf(“%d”,&x);/*輸入一個(gè)數(shù)*/ count++;/*每輸入一個(gè)數(shù),記一下數(shù)*/ if(x>0)/*判斷輸入數(shù)〉0否*/ sum=sum+x;/*是〉0,則加到累加和中*/}while(count<100);/*未輸入完100個(gè)數(shù),則重復(fù)*/printf(“%d”,sum);/*輸出累加和*/}準(zhǔn)備工作
算法步驟1.3C語(yǔ)言程序概要1.3.1函數(shù)(p8)Intmain(void){
}例1.1在屏幕上顯示:Programmingisfun.printf(“Programmingisfun.\n”);語(yǔ)句執(zhí)行該語(yǔ)句就是調(diào)用printf函數(shù)#include<stdio.h>編譯預(yù)處理命令return0;/*向操作系統(tǒng)返回一個(gè)數(shù)字0*//*文件名:ex010101.c*///向操作系統(tǒng)返回一個(gè)數(shù)字0/*向操作系統(tǒng)返回一個(gè)數(shù)字0*/1.任何程序都有主函數(shù)2.程序由若干語(yǔ)句組成3.語(yǔ)句由;結(jié)束主函數(shù)輸出函數(shù)注釋/*文件名:ex010101.c*/#include<stdio.h>intmain(void){printf(“Programmingisfun.\n”);return0;}換行符例1.1在屏幕上顯示:Programmingisfun.在屏幕上顯示:
Programmingisfun.
ThefirstCProgram!#include<stdio.h>main(){
printf(“Programmingisfun.\n”);}printf(“ThefirstCProgram!
\n”);}#include<stdio.h>voidmain(void){
inta,b,sum;
/*變量定義*/
a=3;/*變量使用*/b=2;
sum=a+b;
printf(“Thesumis%d\n”,sum);/*輸出結(jié)果*/}Thesumis
5計(jì)算并顯示兩個(gè)數(shù)的和
=賦值運(yùn)算符%d輸入輸出函數(shù)中的“格式字符串”,表示
以十進(jìn)制整數(shù)的形式輸出。(%d的位置被sum的值取代)#include<stdio.h>Intmain(void){
inta,b,sum;
/*變量定義*/
a=3;b=2;/*變量使用*/
sum=a+b;
多printf(“Thesumis%d\n”,sum);/*輸出結(jié)果*/}3+2=5計(jì)算兩個(gè)數(shù)的和,以算式的形式顯示Thesumis
5
printf(“%d+%d=%d\n”,a,b,sum);計(jì)算兩個(gè)數(shù)的和,以算式的形式顯示#include<stdio.h>voidmain(void){inta,b,sum;
a=3;b=2;sum=a+b;printf("%d+%d=%d\n",a,b,sum);}
●輸入2個(gè)數(shù),求和。scanf("%d%d",&a,&b);
//讀入2個(gè)數(shù)輸入函數(shù)printf("Input2numbers:\n");//輸入提示例1.2輸入2個(gè)數(shù),求和。/*文件名:ex010201.c*/#include<stdio.h>intadd(int,int);intmain(void){ inta,b,s; printf("Input2numbers:\n"); scanf("%d%d",&a,&b); s=add(a,b); printf("Thesumis:%d\n",s); return0;}intadd(inta,intb){intsum;sum=a+b;returnsum;}①關(guān)于函數(shù)的聲明②關(guān)于庫(kù)函數(shù)程序由主函數(shù)intmain(void)
和用戶自定義函數(shù)intadd(inta,intb)
組成例1.3
編寫C語(yǔ)言程序,計(jì)算一個(gè)數(shù)的正弦值。/*文件名:ex010301.c*/#include<stdio.h>#include<math.h>intmain(void){floatx;/*定義x為實(shí)型變量*/x=sin(0.19199);/*調(diào)用sin函數(shù)*/printf(“%f\n”,x);/*調(diào)用printf函數(shù),輸出x的值*/}●子函數(shù)應(yīng)當(dāng)首選函數(shù)庫(kù)中的,當(dāng)庫(kù)中沒(méi)有時(shí),自行設(shè)計(jì)?!袷褂脦?kù)函數(shù),通過(guò)文件包含命令把頭文件包含在程序前面。結(jié)構(gòu)特點(diǎn)函數(shù)與主函數(shù)程序由一個(gè)或多個(gè)函數(shù)組成必須有且只能有一個(gè)主函數(shù)main()程序執(zhí)行從main開(kāi)始,在main中結(jié)束,其它函數(shù)通過(guò)嵌套調(diào)用得以執(zhí)行。例:/*Thisisthemain/*ofexample1.1*/*/非法編譯預(yù)處理命令#include<stdio.h>intadd(intx,inty){intz;z=x+y;return(z);}main(){inta,b,sum;a=10;b=24;sum=add(a,b);printf(”sum=%d\n",sum);}程序語(yǔ)句C程序由語(yǔ)句組成用“;”作為語(yǔ)句終止符注釋/**/為注釋,不能嵌套不產(chǎn)生編譯代碼函數(shù)的使用簡(jiǎn)化了主函數(shù);可以實(shí)現(xiàn)模塊化程序設(shè)計(jì)格式特點(diǎn)習(xí)慣用小寫字母,大小寫敏感不使用行號(hào),無(wú)程序行概念可使用空行和空格常用鋸齒形書寫格式main(){
……………….………………
…………..…………..
……………….
………………………….
……………….………………..}main(){
inti,j,sum;sum=0;for(i=1;i<10;i++){for(j=1;j<10;j++){sum+=i*j;}}printf(“%d\n”,sum);}優(yōu)秀程序員的素質(zhì)之一:使用TAB縮進(jìn){}對(duì)齊有足夠的注釋有合適的空行1.表達(dá)式語(yǔ)句1.3.2語(yǔ)句(p12)學(xué)習(xí)C語(yǔ)言程序設(shè)計(jì),必須掌握變量、常量和運(yùn)算符的正確表示方法和使用規(guī)則。2.流程控制語(yǔ)句條件語(yǔ)句否是條件語(yǔ)句1語(yǔ)句2否是例1.4
由鍵盤輸入兩個(gè)數(shù),輸出其中的較大數(shù)。/*文件名:ex010401.c*/#include<stdio.h>floatmax2(floatx,floaty){ floatmax;if(x>=y) max=x; else max=y;printf("Themaxis:%f\n",max);}intmain(void){floata,b; printf(“Inputtworealnumbers:\n”); scanf("%f%f",&a,&b); max2(a,b); return0;}輸入1.2352.345輸出Themaxis:2.345000X≥y?max=xmax=y否是輸出max例1.5
由求累加和的值。/*文件名:ex010501.c*/#include<stdio.h>intsigma(intn){inti=0,sum=0;while(i<n) {i++;sum=sum+i; }returnsum;}intmain(void){intm,total;scanf("%d",&m);total=sigma(m);printf("total=%d\n",total);return0;}i≤n?sum=sum+1returnsum否是i=0,sum=0i++3.塊語(yǔ)句塊語(yǔ)句在語(yǔ)法上相當(dāng)于一條語(yǔ)句?;据斎胼敵龊瘮?shù)簡(jiǎn)介格式化輸出函數(shù)printf()printf(格式控制,輸出參數(shù)1,...,輸出參數(shù)n);printf("HelloWorld!\n");printf("%d,%d\n",resm,resn);printf("sum=%d\n",sum);格式控制格式控制說(shuō)明
%…
%d:輸出十進(jìn)制整數(shù)%f:輸出十進(jìn)制浮點(diǎn)數(shù)%c:輸出單個(gè)字符普通字符原樣輸出普通字母數(shù)字及符號(hào)轉(zhuǎn)義字符\n,\tx=34;y=3.14;printf("X=%d,Y=%f",x,y);輸出:X=34,Y=3.14格式化輸入函數(shù)scanf()scanf(格式控制,輸入?yún)?shù)1,...,輸入?yún)?shù)n);格式控制說(shuō)明
%…
普通字符原樣輸入scanf("%d%d",
&m,
&n);
格式控制變量地址scanf("%d,%d",
&m,
&n);要求輸入:5,6scanf("m=%d,n=%d",
&m,
&n);要求輸入:
m=5,
n=6
最好直接了當(dāng):scanf("%d%d",&m,&n);2.4C程序的上機(jī)步驟C程序開(kāi)發(fā)步驟編輯鏈接編譯執(zhí)行程序代碼的錄入,生成源程序*.c語(yǔ)法分析查錯(cuò),翻譯生成目標(biāo)程序*.obj與其它目標(biāo)程序或庫(kù)鏈接裝配,生成可執(zhí)行程序*.exe開(kāi)始結(jié)束編輯編譯連接執(zhí)行有錯(cuò)?結(jié)果正確?可執(zhí)行目標(biāo)程序*.exe源程序*.c庫(kù)函數(shù)和其他目標(biāo)程序目標(biāo)程序*.obj無(wú)有正確不正確TurboC2.0的集成環(huán)境用F10激活菜單欄Alt+大寫字母選擇菜單,如Alt+F選擇File菜單F9編譯源程序,Ctrl+F9連接運(yùn)行,Alt+F5看運(yùn)行結(jié)果①26個(gè)英文字母(大寫和小寫表示兩個(gè)不同的字符)②10個(gè)阿拉伯?dāng)?shù)字(0~9)③其它特殊符號(hào),以運(yùn)算符為主(+、-、*、/、!等)
●
C語(yǔ)言的字符集
在C語(yǔ)言中,變量名、符號(hào)名、函數(shù)名、數(shù)組名、文件名和其它由用戶自定義的數(shù)據(jù)類型名,被統(tǒng)稱為標(biāo)識(shí)符。
●標(biāo)識(shí)符
1.3.3名字與聲明(p15~17)●標(biāo)識(shí)符的書寫規(guī)則:①合法的標(biāo)識(shí)符(名字)只能由字母、數(shù)字和
下劃線組成。②必須以字母或下劃線開(kāi)頭。③不能用保留字作為標(biāo)識(shí)符。例:判斷下列標(biāo)識(shí)符號(hào)合法性sumSumM.D.JohndayDate3daysstudent_name#33lotus_1_2_3chara>b_above$123M.D.John3days
溫馨提示
- 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年研發(fā)合作采購(gòu)協(xié)議2篇
- 2024高速鐵路線路安全監(jiān)測(cè)合同
- 中國(guó)石油大學(xué)(北京)《人與環(huán)境(環(huán)境修復(fù)與可持續(xù)發(fā)展)》2023-2024學(xué)年第一學(xué)期期末試卷
- 浙江傳媒學(xué)院《產(chǎn)品形象設(shè)計(jì)》2023-2024學(xué)年第一學(xué)期期末試卷
- 營(yíng)業(yè)員工作總結(jié)
- 2025年度高端裝備制造承諾賒銷協(xié)議3篇
- 建筑行業(yè)美工室內(nèi)外設(shè)計(jì)立體效果圖制作
- 護(hù)眼保健品知識(shí)培訓(xùn)課件
- 電影院前臺(tái)服務(wù)技巧分享
- 聽(tīng)證員專業(yè)知識(shí)培訓(xùn)課件
- 2025年中國(guó)AI AGENT(人工智能體)行業(yè)市場(chǎng)動(dòng)態(tài)分析、發(fā)展方向及投資前景分析報(bào)告
- 家居建材行業(yè)綠色材料應(yīng)用及節(jié)能設(shè)計(jì)方
- 大慶市2025屆高三年級(jí)第二次教學(xué)質(zhì)量檢測(cè)(二模)政治試卷(含答案)
- 2024年中國(guó)玩具工程車市場(chǎng)調(diào)查研究報(bào)告
- 2025年內(nèi)蒙古阿拉善額濟(jì)納旗事業(yè)單位引進(jìn)48人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025-2030年中國(guó)電動(dòng)三輪車市場(chǎng)發(fā)展現(xiàn)狀及前景趨勢(shì)分析報(bào)告
- TCABEE 063-2024 建筑光儲(chǔ)直柔系統(tǒng)變換器 通 用技術(shù)要求
- 【9化期末】合肥市廬陽(yáng)區(qū)2023-2024學(xué)年九年級(jí)上學(xué)期期末化學(xué)試題
- 高一下學(xué)期生物人教版必修二:3.4 基因通常是有遺傳效應(yīng)的DNA片段課件
- 雅禮中學(xué)2024-2025學(xué)年初三創(chuàng)新人才選拔數(shù)學(xué)試題及答案
- 下屬企業(yè)考核報(bào)告范文
評(píng)論
0/150
提交評(píng)論