計(jì)算機(jī)和C編程入門_第1頁(yè)
計(jì)算機(jī)和C編程入門_第2頁(yè)
計(jì)算機(jī)和C編程入門_第3頁(yè)
計(jì)算機(jī)和C編程入門_第4頁(yè)
計(jì)算機(jī)和C編程入門_第5頁(yè)
已閱讀5頁(yè),還剩36頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論