第1章 C語言概述_第1頁
第1章 C語言概述_第2頁
第1章 C語言概述_第3頁
第1章 C語言概述_第4頁
第1章 C語言概述_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

程序設(shè)計(jì)(C語言)C語言程序設(shè)計(jì)教學(xué)要求掌握程序設(shè)計(jì)語言的基本知識常用算法初步的程序設(shè)計(jì)能力學(xué)習(xí)方法自主學(xué)習(xí)重視上機(jī)實(shí)踐總課時(shí)75=49(上課)+26(上機(jī))第2-10,12-15的周五在南機(jī)房SA1,SA2,SB1,SB2上機(jī)如何盡快學(xué)會用C語言進(jìn)行程序設(shè)計(jì)了解程序設(shè)計(jì)語言(C語言)模仿、改寫、編寫通過不斷的編程實(shí)踐,逐步領(lǐng)會和掌握程序設(shè)計(jì)的基本思想和方法。教材和參考書C程序設(shè)計(jì),清華大學(xué)出版社,譚浩強(qiáng),第三版C語言程序設(shè)計(jì),高等教育出版社,何欽銘、顏暉,2008C語言程序設(shè)計(jì)實(shí)驗(yàn)指導(dǎo),高等教育出版社,顏暉等,2008C語言編程(第3版),[美]Stephen,G.Kochan,張小潘譯,電子工業(yè)出版社,2006C語言教程(第4版),[美]AlKelley,IraPohl,徐波譯,機(jī)械工業(yè)出版社,2007標(biāo)準(zhǔn)C語言基礎(chǔ)教程(第4版),[美]GaryJ.Bronson,單先余等譯,電子工業(yè)出版社,2006C程序設(shè)計(jì)語言,[美]BrianW.Kernighan,DennisM.Ritchie,徐寶文等譯,機(jī)械工業(yè)出版社,2006第1章 C語言概述

一、C語言簡介:C語言是國際上廣泛流行的、很有發(fā)展前途的計(jì)算機(jī)高級語言。適合作為系統(tǒng)描述語言來寫系統(tǒng)軟件,也可用來編寫應(yīng)用軟件。集高級語言和低級語言的特點(diǎn)于一體。即:既具有很強(qiáng)的可讀性和可移植性,又可直接對硬件進(jìn)行操作。故有時(shí)亦稱之為中級語言;微機(jī)常見的有:MicrosoftC(MS-C)、TurboC、QuickC、C++、VC二、C語言的發(fā)展歷史與特點(diǎn)歷史1972年:貝爾實(shí)驗(yàn)室的DennisRitchie在B語言的基礎(chǔ)上設(shè)計(jì)并實(shí)現(xiàn)了C語言。1978年:B.W.Kernighan和D.Ritchie(簡稱K&R)合著的《TheCProgrammingLanguage》是各種C語言版本的基礎(chǔ),稱之為舊標(biāo)準(zhǔn)C語言。1983年:美國國家標(biāo)準(zhǔn)化協(xié)會(ANSI)制定了新的C語言標(biāo)準(zhǔn),稱ANSIC。C語言的特點(diǎn)1.C語言是一種結(jié)構(gòu)化語言2.C語言語句簡潔、緊湊,使用方便、靈活32個(gè)關(guān)鍵字,9種控制語句,程序書寫形式自由。3.C語言程序易于移植C語言將與硬件有關(guān)的因素從語言主體中分離出來,通過庫函數(shù)或其他實(shí)用程序?qū)崿F(xiàn)它們。4.C語言有強(qiáng)大的處理能力5.生成的目標(biāo)代碼質(zhì)量高,運(yùn)行效率高6.?dāng)?shù)據(jù)類型檢查不嚴(yán)格,表達(dá)式出現(xiàn)二義性,不具備數(shù)據(jù)越界自動(dòng)檢查功能,運(yùn)算符的優(yōu)先級與結(jié)合性對初學(xué)者難于掌握。三、C程序結(jié)構(gòu)及書寫格式:1.介紹三個(gè)簡單的C程序,

請同學(xué)們模仿、改寫、編寫C程序例1.在屏幕上顯示HelloWorld!/*顯示“HelloWorld!”*/

注釋文本

#include<stdio.h>int

main()

主函數(shù){

printf(“HelloWorld!\n”);語句結(jié)束

return0;}

輸出函數(shù)

換行符1.任何程序都有主函數(shù)2.程序由若干語句組成3.語句由;結(jié)束例1.2:求兩數(shù)之和 #include<stdio.h>intmain() /*求兩數(shù)之和*/

{inta,b,sum; /*這是定義變量*/

a=123; b=456; sum=a+b; printf(“sumis%d\n”,sum); return0;}例1.3自定義函數(shù)求兩數(shù)中較大數(shù),并輸出#include<stdio.h>

intmain() /*定義主函數(shù)*/

{intmax(intx,inty); int a,b,c; /*定義變量*/

scanf(“%d%d”,&a,&b);/*要求從鍵盤上鍵入變量a和b的值*/

c=max(a,b); /*調(diào)用max函數(shù),將返回的值賦給e*/

printf(“max=%d”,c); /*輸出c的值*/

return0;}(1)輸入:85(2)顯示:max=8

intmax(intx,inty)

/*定義max函數(shù),函數(shù)值為整型*/

{intz; /*函數(shù)max的局部變量的類型說明*/

if(x>y)z=x;elsez=y;return(z);

/*選大者放于Z中,并返回*/

}2.C程序結(jié)構(gòu)(構(gòu)成):1)程序由主函數(shù)main或加上若干個(gè)自定義函數(shù)(子函數(shù))所組成(函數(shù)是程序的基本單位);并且程序的執(zhí)行與函數(shù)的書寫次序無關(guān);總是從主函數(shù)main的第一個(gè)可執(zhí)行語句開始執(zhí)行。2)函數(shù)的構(gòu)成:

[<類型說明>]<函數(shù)名>

([<形參表>])

{[<局部變量說明>]

[<執(zhí)行語句>]

[<返回值語句>]}

intmax(intx,inty){intz;

if(x>y)z=x;elsez=y;return(z);}

3)注意:(1)必須用一對圓括號括起形參表,或空表。如:main();(2)必須用一對花括號括起函數(shù)體,如:{~;}(3)主函數(shù)名必須是小寫main四個(gè)字母。3.書寫格式:

(1)一行可寫多個(gè)語句,一個(gè)語句也可分成多行寫,程序的功能不受影響;(2)每個(gè)語句之末必須有一個(gè)分號“;”(3)一般采用小寫字母,特殊量才包含大寫字母:大小寫不等價(jià)!(4)為提高程序的可閱讀性,程序中隨處都可以用/*~*/加以注釋說明。作業(yè):1、仿照例題,編寫一個(gè)C程序,輸出以下信息(???用自己姓名的拼音代替)。提示:調(diào)用一次printf函數(shù)輸出一行,本題一共要調(diào)用五次printf函數(shù)Thisis???‘scprogram.******************************HelloWorld!******************************WelcometoCProgram!2、仿照例題,編程實(shí)現(xiàn)兩數(shù)的互換,若假設(shè)a=3,b=8,交換a,b的內(nèi)容,使得a=8,b=3,并輸出a和b的內(nèi)容。問題分析與算法設(shè)計(jì)思路——》確定算法算法:一組明確的解決問題的步驟,它產(chǎn)生結(jié)果并可在有限的時(shí)間內(nèi)終止。算法的描述:自然語言偽代碼流程圖:算法的圖形表示法三、實(shí)現(xiàn)問題求解的過程問題:編程實(shí)現(xiàn)兩數(shù)的互換,若假設(shè)a=3,b=8,交換a,b的內(nèi)容,使得a=8,b=3,并輸出a和b的內(nèi)容。1.問題分析與算法設(shè)計(jì)交換a,b的內(nèi)容,要借助于第3個(gè)變量temp.思路:設(shè)置一個(gè)變量(temp)

將a的值保存到temp中,b的值賦給a,temp的值賦給binta,b,temp;a=3;b=8;temp=a;a=b;b=temp;輸出a,b的值思路:設(shè)置一個(gè)變量(temp)

將a的值保存到temp中,b的值賦給a,temp的值賦給b實(shí)現(xiàn)問題求解的過程2.編輯程序生成程序的源文件,C語言源文件的后綴為.c/.cpp#include<stdio.h>intmain(void){ inti,sum=0;

for(i=1;i<=100;i++)if(i%2==0)sum=sum+i;printf("%d",sum);return0;}

實(shí)現(xiàn)問題求解的過程3.程序編譯連接編輯程序后,用該語言的編譯程序?qū)ζ溥M(jìn)行編譯,以生成二進(jìn)制代碼表示的目標(biāo)程序(.obj),與編程環(huán)境提供的庫函數(shù)進(jìn)行連接(Link)形成可執(zhí)行的程序(.exe)。編譯程序指出語法錯(cuò)誤

語法錯(cuò)誤VS邏輯錯(cuò)誤實(shí)現(xiàn)問題求解的過程4.運(yùn)行與調(diào)試經(jīng)過編輯、編譯、連接,生成執(zhí)行文件后,就可以在編程環(huán)境或操作系統(tǒng)環(huán)境中運(yùn)行該程序。如果程序運(yùn)行所產(chǎn)生的結(jié)果不是你想要的結(jié)果,這是程序的語義錯(cuò)誤(邏輯錯(cuò)誤)。調(diào)試:在程序中查找錯(cuò)誤并修改錯(cuò)誤的過程。調(diào)試的方法設(shè)置斷點(diǎn)單步跟蹤調(diào)試是一個(gè)需要耐心和經(jīng)驗(yàn)的工作,也是程序設(shè)計(jì)最基本的技能之一。C語言上機(jī)過程源程序

test.cpptest.obj

可執(zhí)

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論