hi!我是漁火。今天開始跟我學,從零開始學C語言(一)
讓我們先來了解一下 C 語言。C 語言是一種用途廣泛、功能強大、使用靈活的高級語言,使用 C 語言既可以開發(fā)應用,又可以開發(fā)系統(tǒng)軟件。C 語言能以簡易的方式編譯、處理低級存儲器。C 語言是僅產生少量的機器語言以及不需要任何運行環(huán)境支持便能運行的高效率程序設計語言。接下來,讓我們看一段基礎的代碼。
【1.1】
#include int main() { int a,b,c; int max(int,int); printf("請輸入第一個整數:"); scanf("%d",&a); printf("請輸入第二個整數:"); scanf("%d",&b); c=max(a,b); printf("整數%d和%d的最大值是:%d ",a,b,c); return 0; } int max(int x,int y) { int z; if(x>y) z=x; else z=y; return z; }
以下是運行結果:
小白提示:
(1)從上面的程序可以看出。C 語言是由函數組成的。本程序涉及4個函數:main()、max()、scanf()和printf()。其中main()函數是程序的主函數,max() 是程序中定義的函數。其作用是求兩個數中的最大數,scanf() 和printf() 是系統(tǒng)事先設計好的函數,分別用于輸入和輸出。
(2)所有的 C 語言有且只有一個 main() 函數。C 語言總是從 main() 函數的第一條語句開始運行,當main() 函數結束時,程序也就結束了。
代碼分析:
1、本程序運行時,首先從調用 printf() 函數開始,輸出第一個提示。
2、然后調用 scanf() 函數從鍵盤獲得一個值,并賦給變量a。
3、接著調用第二個 printf() 函數輸出第二個提示。
4、再調用第二個scanf()函數從鍵盤獲得一個值,并賦給b。
5、求兩個數的最大值是由max()函數完成的,所以在程序執(zhí)行到c=max(a,b)時,會首先調用max()函數,調用時將實際參數a和b的值分別傳遞給max()函數中的形式參數x和。
6、然后開始執(zhí)行函數max()中的語句;用if的語句判斷并得到最大值,在執(zhí)行到“return z;”時,函數結束運行并把z的值返回。
7、程序運行回到main()函數調用的地方(c=max(a,b)),變量c得到最大值。
8、最后再次調用printf()函數輸出最大值,輸出格式中的每個%d對應輸出一個十進制整型數,第一個%d對應a,第二個%d對應b,第三個%d對應c。
我們需要簡單的了解一些概念,比如程序、程序設計語言、程序的算法表示等等。
程序是為實現特定目標或解決特定問題而用計算機語言(程序設計語言)編寫的一系列語句和指令,計算機能夠嚴格按照這些指令去做。程序的執(zhí)行過程實際上是對程序所表達的數據處理的過程。程序具有以下特點:1、完成某一特定的任務;2、使用某種程序設計描述如何完成該任務;3、存儲在計算機中,并且被運行后才能起作用。
計算機語言的發(fā)展大致經歷了幾個階段:1、機器語言。2、匯編語言。3、高級語言。按照語言的特性,高級語言又經歷了不同的發(fā)展階段:1、非結構性的語言。2、結構化的語言。3、面向對象的語言。程序設計語言是與人與計算機進行交流的橋梁,人要讓計算機按照自己的意愿處理數據,就必須用程序設計語言表達所要處理的數據以及控制數據處理的流程。因此程序設計語言必須有數據表達與數據處理的能力。任何程序的基本結構都可以通過基本的控制結構進行組合。分別是順序結構,選擇結構和循環(huán)結構。這三種結構的共同特點是:1、只有單一的入口和單一的出口;2、結構中的每個部分都有被執(zhí)行的可能;3、結構內不應出現永不終止的死循環(huán)。
通俗的講,算法就是解決問題的方法與步驟。盡管針對不同問題所設計的算法千變萬化,簡繁各異,但作為算法,都應具備以下幾個特征:(1)確定性;(2)有窮性;(3)可行性;(4)有零個或多個輸入;(5)有一個或多個輸出。
下面對算法的表示方式進行簡單的敘述
1、用文字描述算法
2、用流程圖描述算法
3、偽代碼表示
4、程序代碼表示
補充:偽代碼是指一種近似高級語言但又不受語法約束的語言描述方式,它不能在計算機中運行,但可以來描述算法。舉例:
題目:隨機放入10個兩位正整數,找出其中最大的數。
{ 輸入第一個數賦給max; for(int i=1;i<=9;i++); { 輸入第i+1個數賦給x; if(x>max) max=x; } 輸出max; }
最后,我們再看一個簡單的小問題,編寫一段代碼。
題目:交換兩個變量a和b的值。
#include int main() { int a,b,t; a=3; b=5; a=b; b=t; printf("%d %d",a,b); return 0; }
運行結果如下:
如果還有什么疑問或建議,請在下面的評論部分給我們留言,歡迎分享Linux迷 給你們的朋友。
-
存儲器
+關注
關注
38文章
7453瀏覽量
163608 -
C語言
+關注
關注
180文章
7598瀏覽量
136208 -
程序
+關注
關注
116文章
3777瀏覽量
80853 -
函數
+關注
關注
3文章
4307瀏覽量
62432 -
代碼
+關注
關注
30文章
4750瀏覽量
68357
原文標題:跟我從零開始學 C 語言系列(一)
文章出處:【微信號:Linux迷,微信公眾號:Linux迷】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論