重新來過 .。。。。。
writed on time 20190506 海淀
1、所謂程序,就是一組計算機(jī)能識別和執(zhí)行的指令;計算機(jī)的本質(zhì)是程序的機(jī)器,程序和指令是計算機(jī)系統(tǒng)中最基本的概念;
2、計算機(jī)語言經(jīng)歷了幾個發(fā)展階段:機(jī)器語言:這種計算機(jī)能直接識別和接受的二進(jìn)制代碼稱為機(jī)器指令。機(jī)器指令的集合就是該計算機(jī)的機(jī)器語言;符號語言:面向機(jī)器高級語言
3、高級語言經(jīng)歷了不同的發(fā)展階段:
(1)面向過程
????????非結(jié)構(gòu)化的語言
? ? ? ? 結(jié)構(gòu)化語言
(2)面向?qū)ο?/p>
4、C語言有以下一些主要特點:
? ? ? ? 1)語言簡潔,緊湊,使用方便、靈活
? ? ????2)運算符豐富
? ? ????3)數(shù)據(jù)類型豐富
? ? ????4)具有結(jié)構(gòu)化的控制語句,C語言是完全模塊化和結(jié)構(gòu)化的語言
? ? ????5)語法限制不太嚴(yán)格,程序設(shè)計自由度大;
? ? ????6)C語言允許直接訪問物理地址,能進(jìn)行位(bit)操作,能實現(xiàn)匯編語言的大部分功能,可以直接對硬件進(jìn)行操作;
? ? ????7)用C語言編寫的程序可移植性好;
? ? ????8)生成目標(biāo)代碼質(zhì)量高,程序執(zhí)行效率高;
5、C語言原來是專門為編寫系統(tǒng)軟件而設(shè)計的,許多大的軟件都用C語言編寫,這是因為C語言的可移植性好和硬件控制能力高,表達(dá)和運算能力強(qiáng)。
6、簡單C語言舉例:
????# include <stdio.h>? ? ? ? ? ? ? ? ? ? ? ? ? ? //這是編譯預(yù)處理指令
????int main()? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//定義主函數(shù)
????{????????????????????????????????????????????????????????//函數(shù)式開始的標(biāo)志
????????printf("This is a C program. \n");? ?//輸出所指定的一行信息
????????return 0;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//函數(shù)執(zhí)行完畢時返回函數(shù)值0
? ? }? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//函數(shù)結(jié)束的標(biāo)志
7、每個C語言程序都必須有一個main函數(shù)。函數(shù)體由花括號{}括起來。
8、C語言程序的結(jié)構(gòu)特點
????1)一個程序由一個或者多個源程序文件組成
? ? ????(1)預(yù)處理指令
? ? ????(2)全局聲明
? ? ????(3)函數(shù)定義
????2)函數(shù)是C語言的主要組成部分
????????一個C語言程序是由一個或多個函數(shù)組成的,其中必須有一個main函數(shù)(且只能有一個main函數(shù))
????3)一個函數(shù)包括兩個部分
????????函數(shù)首部、
? ? ? ? 函數(shù)體(聲明部分、執(zhí)行部分)
????4)程序總是從main函數(shù)開始的
????5)程序?qū)τ嬎銠C(jī)的操作是由函數(shù)中的C語句完成的
????6)在每個數(shù)據(jù)聲明和語句的最后必須有一個分號
? ? 7)C語言不提供輸入輸出語句
????8)程序應(yīng)當(dāng)包含注釋
9、運行C程序的步驟與方法
????(1)上機(jī)輸入和編輯源程序
????(2)對源程序進(jìn)行編譯,先用C編譯系統(tǒng)提供的“預(yù)處理器”對程序中的預(yù)處理指令進(jìn)行編譯預(yù)處理。
????(3)進(jìn)行連接處理(即使一個程序只包含一個源程序文件,編譯后得到的目標(biāo)程序也不能直接運行,也要經(jīng)過連接階段,因為要與函數(shù)庫連接,才能生產(chǎn)可執(zhí)行程序)
????(4)運行可執(zhí)行程序
10、程序設(shè)計的任務(wù)
????(1)問題分析
????(2)設(shè)計算法
????(3)編寫程序
????(4)對源程序進(jìn)行編輯,編譯和連接
????(5)運行程序,分析結(jié)果(測試在此過程)
????(6)編寫程序文檔(程序說明,產(chǎn)品說明)