一、什麼是電腦程式? 所謂程式就是一組電腦能識別和執行的指令。電腦的一切操作都是由程式控制的,本質是程式的機器,程式和指令是電腦系統最基本的概念。 二、什麼是電腦語言? 人和電腦交流信息要解決語言問題,需要創造一種電腦和人都能識別的語言,這就是電腦語言。 1、電腦發展的階段 機器語 ...
一、什麼是電腦程式?
所謂程式就是一組電腦能識別和執行的指令。電腦的一切操作都是由程式控制的,本質是程式的機器,程式和指令是電腦系統最基本的概念。
二、什麼是電腦語言?
人和電腦交流信息要解決語言問題,需要創造一種電腦和人都能識別的語言,這就是電腦語言。
1、電腦發展的階段
機器語言:
電腦只能識別和接收由0和1組成的指令。如:0100001
電腦能直接識別和接受的二進位代碼稱為機器指令。
機器指令的集合就是該電腦的機器語言。
符號語言:
即彙編語言。把符號語言的指令轉換為機器指令,轉換過程稱為代真或彙編,因此,符號語言又稱為符號彙編語言或彙編語言。
由於它“貼近”電腦,離電腦“很近”稱為電腦低級語言。
高級語言:
第一個高級語言——FORTRAN語言,這種語言功能很強,而且不依賴於具體機器,用它寫出的程式對任何型號的電腦都適用(或只須做很少的該公),它與具體
機器距離較遠,故稱為電腦高級語言。
用一種稱為編譯程式的軟體把高級語言寫的程式稱為源程式。轉換為機器指令的程式稱為目標程式,然後讓電腦執行機器指令程式,最後得到結果。
三、C語言的發展及其特點
C語言是國際上廣泛流行的電腦高級語言。
1、C語言的由來
CPL——>BCPL——>B語言——>C語言
BCPL:1967年英國劍橋大學的Martin Richards推出沒有類型的BCPL語言;
B語言:1970年美國AT&T貝爾實驗室Ken Thompson設計出B語言取BCPL第一個字母;
C語言:1972--1973年間,美國AT&T貝爾實驗室的D.M.Ritchie在B語言基礎上設計出C語言取BCPL第二個字母。
2、C語言的特點
(1)語言簡潔,緊湊,使用方便靈活;
(2)運算符豐富;
(3)數據類型豐富;
(4)具有結構化的控制語句;
(5)語法限制不太嚴格,程式設計自由度大;
(6)C語言允許直接訪問物理地址,能進行bit操作,能實現彙編語言大部分功能,可以直接對硬體進行控制;
(7)用C語言編寫的程式可移植性好;
(8)生成目標代碼質量高,程式執行效率高。
四、最簡單的C語言程式
#include<stdio.h> //這是編譯預處理指令 int main() //定義主函數 { //函數開始的標誌 printf("Hello World"); //輸出所指定的信息 return 0; //函數執行完畢時返回函數值0 } //函數結束的標誌
int main():C語言的一種聲明方式,表示主函數,是C語言約定的程式入口,main前面的int表示函數的返回值類型是int型(基本整型);
printf:輸出函數;
{}:函數體;
return 0:返回的函數值是給調用main函數的操作系統用的,用來檢測函數是否正常執行,對應main函數的返回值類型;
stdio:standard input 和 output;
.h:頭文件,header file;
stdio.h:系統提供的文件名。輸入輸出函數的相關信息事先放在stdio.h文件中;
#include:把這些信息調入供使用;
#include<stdio.h>:只要用到標準庫中的輸入輸出函數,應該在文件開頭寫上;
//:單行註釋;
/**/:塊註釋。
1、C語言的應用場景
(1)系統軟體;
(2)驅動;
(3)操作系統內核;
(4)嵌入式(單片機)開發;
(5)小程式。
2、C語言程式結構
(1)一個程式由一個或多個源程式文件組成。
預處理指令:如#include<stdio.h>。先由一個“預處理器”對預處理指令進行預處理。
對於#include<stdio.h>來說就是將stdio.h頭文件的內容讀進來放在#include指令行,取代了#include<stdio.h>。
全局聲明:在函數之外進行的數據聲明。
放在函數外面聲明的變數稱為全局變數反之局部變數。
函數定義:每個函數用來實現一定的功能。在調用這些函數時,會完成函數定義中指定的功能。
(2)函數是C程式的主要組成部分
程式幾乎全部的工作都是由各個函數分別完成的,函數是C程式的基本單位。編寫C程式的工作主要就是編寫一個個函數。
一個C語言程式是由一個或多個函數組成的,其中必須包含一個main函數(且只能有一個main函數)。
一個小程式只包含一個源程式文件,在一個源程式文件中包含若幹個函數(其中有一個main函數)。
在進行編譯時是以源程式文件為對象進行的。在分別對各源程式文件(程式模塊)進行編譯並得到相應的目標程式後,再將這些目標程式連接成為一個統一的二進位的可執行程式。
(3)一個函數包括兩個部分
函數首部:例max函數首部:int函數類型 ,max函數名,(int函數參數類型 x函數參數名)
函數體:即函數首部下麵的花括弧內的部分。最外層花括弧是函數體範圍。
函數體包括兩個部分:
聲明部分:定義在本函數中所用到的變數;int a,b,c;,對本函數所調用函數進行聲明,如:int max(int x,int y);
執行部分:由若幹個語句組成,指定在函數中進行的操作。
(4)程式總是從main函數開始執行的
main函數可以放在程式最前頭,也可以放在程式最後,或在一些函數之前、另一些函數之後。
(5)程式中對電腦的操作是由函數中的C語句完成的
賦值、輸入輸出數據的操作都是由相應的C語句實現的。C程式書寫格式比較自由,一行可寫多個語句,一個語句可在多行寫。
(6)在每個數據聲明和語句的最後必須有一個分號
分號是C語句的必要組成部分。
(7)C語言本身不提供輸入輸出語句
輸入輸出語句是由庫函數來完成的。使程式具有可移植性。
(8)程式應當包含註釋
加上註釋,增加程式的可讀性
總結:
(1)C語言本身不提供輸入輸出語句,輸入輸出操作是由C標準函數庫中的函數實現的;
(2)C語言的演算法可以有0個或多個輸入,但必須要有1個或多個輸出(必須要有輸出);
(3)C源文件(編譯)obj目標文件(連接)exe可執行文件
(4)一條語句 多行寫;多條語句,一行寫。