无码任你躁久久久久久久-激情亚洲一区国产精品-超碰97久久国产精品牛牛-久久se精品一区精品二区国产

首頁 > 文章中心 > c語言

c語言

前言:想要寫出一篇令人眼前一亮的文章嗎?我們特意為您整理了5篇c語言范文,相信會為您的寫作帶來幫助,發現更多的寫作思路和靈感。

c語言

c語言范文第1篇

關鍵詞:C語言 函數調用 間接訪問

中圖分類號:TP312 文獻標識碼:A 文章編號:1007-9416(2015)12-0000-00

C語言程序設計是結構化程序設計,函數是C語言的基本模塊,函數調用是C語言運行的重要機制,在C語言中除了提供大量的庫函數外,要實現具體的功能必須自己定義函數,定義出函數要實現的功能,使用函數的過程就是調用函數的過程,即函數間的接口,接口的實現是通過參數傳遞方式實現,函數調用的關鍵是正確傳遞實參值,用正確的形參變量來接收。

1 函數的定義

所謂函數定義,即定義函數功能,如求和,求最值,排序功能,用C語言提供的選擇結構、循環結構寫出具體的代碼實現。如果函數只是完成某項特定的處理任務可以定義無返回值的函數,如果函數最后要返回結果,可以定義的返回值的函數,如下兩段代碼左邊有返回值,右邊沒有返回值。

int sum1(int m)//函數頭部

{ int i,sum=0;

for(i=1;i

sum=sum+i;

return sum; }

void sum2(int m)//函數頭部

{ int i,sum=0;

for(i=1;i

sum=sum+i;

}

s=sum;

}

2 函數的調用

函數調用的一般形式為:

函數名(實參列表);

實參可以是常數、變量、表達式等,多個實參用逗號,分隔。

在C語言中,函數調用的方式有多種,例如:

01.// 函數作為表達式中的一項出現在表達式中

02.z = max(x, y);

03.m = n + max(x, y);

04.// 函數作為一個單獨的語句

05.printf("%d", a);

06.scanf("%d", &b);

07.// 函數作為調用另一個函數時的實參

08.printf( "%d", max(x, y) );

09.total( max(x, y), min(m, n) );

在函數調用中還應該注意的一個問題是求值順序的問題。所謂求值順序是指對實參列表中各個參數是自左向右使用呢,還是自右向左使用。對此,各系統的規定不一定相同。

3 實際參數和形式參數

在函數定義時出現函數名后邊括號里的變量就是形參,形參必須是變量,因為在函數調用時形參是被賦值對象,形參只在定義它的函數內部被訪問,是局部變量。

在函數調用時出現在函數名后邊括號里的常量、變量、表達式、函數等是實參,實參當前值是確定的,因為它在賦號右側。

實參出現在主調函數中,形參出現在被調函數中。

4 傳值調用和傳址調用

4.1兩個數對調的函數實現

#include

int a=3,b=4;

void swap1(int a,int b){//值傳遞,也稱為單向傳遞

int t;

t=a;a=b;b=t;

}

void swap2(int *a,int *b){//地址傳遞,也稱為“雙向傳遞”,實質還是單向傳遞

int t;

t=*a;*a=*b;*b=t;

}

main(){

swap1(a,b);

printf("a=%d,b=%d\n",a,b);

swap2(&a,&b);

printf("a=%d,b=%d\n",a,b);

}

第一個輸出結果為3,4,第二個輸出結果為4,3,在這里傳值調用和傳址調用正確,多數教材和資料中談到傳址調用時介紹是雙向傳遞,應該是不正確的,以下面例子為例:

4.2有下列程序

# include

void fun1(int x,int y)

{ int z;

z=x; x=y; y=z;

}

void fun2(int *x,int *y)

{ int z;

z=*x; *x=*y; *y=z;

(*x)++; (*y)++;

}

void fun3(int *x,int *y)

{ int z;

z=*x; *x=*y; *y=z;

(*x)++; (*y)++;

}

void main()

{ int a=5,b=9;

fun1(a,b);

printf("a=%d,b=%d\n",a,b);

fun2(&a,&b);

printf("a=%d,b=%d\n",a,b);

fun3(&a,&b);

printf("a=%d,b=%d\n",a,b);

}

在這個程序中有三次函數調用,第一次調用結果還第三次調用都沒有改變主調函數中變量的值第二次改變了,第一次是傳值調用,第二、三次是傳址調用,第二次改變的實質不是因為是傳址調用,而是因為使用了間接訪問。

5 C語言程序設計函數使用方法

5.1函數是C模塊語言的模塊

C語言的基本框架是函數,函數是C語言的基本模塊,在理解中列舉生活中的例子,例如一個部門一開始很小,只有一個人,相當只有一個主函數,慢慢的部門壯大起來,需要的人數增多,這時候部門就可以再進一個人,那必然有一個領導另一個,領導者就是先來的人,也就是主函數,被領導者是后來的人,即被調用函數,主函數安排任務給被調函數,要把任務內容告訴被調用函數,這變是參數傳遞。

5.2函數代碼定義過程

定義時先定義被調用函數,然后再定義主函數,這樣在主函數中就不用做函數聲明了。

定義被調用函數時,先把函數名字及圓括號和大括號寫,里面的代碼先不寫。然后寫主函數定義,主函數在這里沒有返回值也無參,主函數的頭部定義沒有問題,然后先寫主函數體代碼,通常主函數分三部分, 輸入、調用和輸出,這三部分相對比較難的是調用,調用時要分析有沒有返回值,有沒有參數,如果有參數,有幾個并且參數的類型要確定,調用時的參數是實際參數,根據實參和形參的一一對應關系,實參確定好了,形參的類型和個數自然也就確定了,這樣被調用函數的頭部就定義好了。

主函數定義后,被調用函數的頭部也定義好了,這時候開始寫被調用函數的函數體,也是編寫程序最難的一部分,涉及具體的算法。

把主函數和被調用函數定義好后,在具體開發環境下編譯、鏈接、執行,找出程序有沒有語法錯誤和邏輯錯誤,最后程序得出正確的結果。

6 結語

C語言程序設計函數部分是學習難點,它把以前學的一個函數能實現的功能分在兩個或多個函數中實現,并且多個函數這間有接口,接口就是函數調用時的參數傳遞,參數傳遞時又涉及到變量的作用域和生存期,函數部分把C語言的各個知識點都聯接起來了,是C語言的集成和綜合,所以學好函數是學好C語言的關鍵。

參考文獻

[1] 譚浩強.C程序設計(第三版)[M].清華大學出版社,2005年.

c語言范文第2篇

關鍵詞:C語言;程序;學習

中圖分類號:TP311文獻標識碼:A文章編號:1009-3044(2008)25-1497-03

Discussion about C Language Learning

YING Shi-yong

(Yancheng Textile Vocational and Technical College, Yancheng 224005, China)

Abstract: In regard to fragmentary knowledge of C language, the beginner have difficulty in learning it. The author puts forward some methods of studying C language from the teaching practice. It helps the beginner to solve some problems in the process of studying and seek for study methods that suit themselves.

Key words: C language; procedures; learning

1 問題的提出

隨著計算機技術的普及,學習語言程序設計的人也越來越多,尤其是學習C語言的人更是多。但是不少人對計算機語言的學習比較頭疼,感到力不從心。平心而論,對于初學者而言,這屬于正常現象。請看下面用C語言編寫的一道程序:

#include "stdio.h"

#definePI 3.1415

main()

{ float r,area;

printf("%please input the value of r:");

scanf("%f",&r);

if(r>0) s=PI*r*r;

else { if(area==0) return(0);

ease return(-1); }

printf("area=%f",area); }

這個程序的功能是通過鍵盤輸入一個實型數,經過程序的運行后,在屏幕上顯示以這個數作為半徑的圓的面積。這雖然是一個比較簡單的程序,卻包含了C語言的很多重要的知識點。因此,對知識點的學習就顯得很重要了。

2 C語言的特點

每一種語言都有自己的特點,C也不例外。它的特點如下:

2.1 語言簡單,使用方便

它采用類似自然語言的語法來書寫程序代碼。所謂自然語言就是接近于人思維習慣的語言。用C語言編寫程序的過程往往就是反映了編程者思考問題的過程。

2.2 運算符豐富

C語言總共有34種運算符號。從而使得C的運算類型很豐富,表達式類型多樣化,靈活使用各種運算可以實現其他高級語言中很難實現的運算。

2.3 數據結構豐富

C本身數據類型多,如整型、單精度型、雙精度型、字符型、數組型、指針型、結構體型、共同體型等,并且能實現各種復雜的鏈表、樹、棧的運算。

2.4 具有結構化的控制語句

常用的有if……else語句、while語句、do……while語句、switch語句、for語句等。用函數作為程序模塊以實現程序的模塊化。

2.5 移植性好

“基本上不作修改就能用語各種型號的計算機和各種操作系統。”[1]

3 C語言入門要點

3.1 注意C語言的書寫

比起經典的教學語言PASCAL來講,C語言的書寫是相對比較隨便,而且具有很靈活性。但是,從易讀性的角度出發還是要遵循一些規則。往往有條有理的程序在視覺上有一種美的享受。如果書寫的程序沒有一定的規律可尋,語句沒有層次感,讀者就會沒有耐心去讀了。書寫結構就如同框架、基本輪廓。養成良好的書寫習慣,對于培養嚴謹的思維很有幫助。在書寫時要尤其要注意以下幾點:

(1)一行中最好是以一個語句為佳。雖然一行中可以書寫很多的語句,但在讀的時候很煩瑣,而且在調試程序時也不容易發現錯誤;

(2){}的配對。在書寫時尤其要注意配對,對于要配對的{}盡量書寫在同一列中。

3.2 掌握C語言的結構

C語言的程序從程序結構上看主要有順序結構、選擇結構、循環結構。程序的結構也就是程序的骨架和輪廓,對程序的執行過程有著很大的影響。

3.2.1 順序結構

顧名思義,就是程序順序地從第一個操作開始,一直執行到最后一個操作[2]。流程圖如圖a。

3.2.2 條件選擇結構

例如:“如果明天下雨,我就不去看電影;如果不下雨,我就在家看電視。”我“去不去看電影”是由“天下不下雨”這個條件決定的,同時,“天下不下雨”這個條件決定了我有兩中選擇:“看電影”還是“在家看電視”。這就是條件選擇的一個模型。

對于程序設計語言來講,選擇結構是一種很重要的結構。就文章開頭的這個例程序,里面就是用了條件選擇結構。首先判斷r是否大于0,因為半徑是負數就沒有意義,所以它不可能是個負數。當半徑為0是就表示是一個點圓,面積自然就是0了。

下面來看看程序中這種結構的程序執行過程:

首先判定條件是否成立,如果成立就說這個條件是真,程序就執行條件問真的子句,如果條件不成立就是說這個條件是假,程序就跳轉執行它下面的條件為假的子句。

用流程圖來表示,如圖b。

對于這個流程圖用語言可以這樣描述:

if (P成立) A

else B

如果語句A或者是語句B中也是一個條件選擇結構結果又會怎么樣?用語言就可以這樣描述了:

if(條件P1){ if(條件P2)語句A;

else語句B;}

else{ if(條件P3)語句C;

else語句D;}

這就是條件結構的嵌套。注意嵌套在C中是很重要的一種結構,不僅是可以在條件選擇之間有嵌套,還可以和下面的要提到的重復(循環)之間構成嵌套。

3.2.3 循環結構

所謂循環結構就是:有一條或者是幾條語句在重復執行,直到它不滿足某種條件為止。典型循環結構有:當型循環和直到型循環。它們的代表語句分別是:while語句和do…while語句。當型結構的流程圖如圖c。

語句的執行過程就是:首先判定條件是否為真,當條件是真時,就重復執行語句,直到條件為假為止。特殊情況,條件永遠為真時,就會變成死循環。

3.3 注重C語言的零碎知識點

零碎的知識點就是血肉,C語言本身的特點就是知識點很零碎,不太容易做到面面俱到,但是我們應力求不要放過每一個知識點。要在細節上多花工夫。

例如:

(1)printf函數和scanf函數。這兩個函數的格式比較復雜,不同的格式要求就會有不同的輸出形式。它們都是C的庫函數。在需要使用標準I/O庫中的函數時,就要包含#include "stdio.h"這個宏定義。

(2)編譯預處理。C的編譯系統對程序進行通常的編譯之前,先對程序中的特殊命令進行預處理。特殊命令有:宏定義、文件包含、條件編譯。編譯預處理也是C語言中常用的寫程序的方法。

(3)數據構造方式可以分為基本類型的數據和派生類型的數據。

(4)算術表達式、關系表達式和邏輯表達式。例如:x+y、x>y和x&&y 分別是是算術表達式、關系表達式和邏輯表達式。算術表達式的結果是根據x,y的取值不同而不同,而關系表達式和邏輯表達式的結果只有兩個:1、0。另外,還要注意表達式的優先級。

3.4 要注重上機操作練習

C也是一個操作性很強的語言。編寫好的程序必須要通過調試。在調試程序的過程中可以學習到很多東西。因為機器是很“無私的”,會無情地指出操作中的錯誤。只要有錯就不能通過編譯,程序就無法運行下去。上機操作的主要目的就是要通過調試程序來驗證你編寫的程序。程序調試是一項很細致的工作,是需要下工夫、積累經驗的過程。上機調試程序不僅僅是 “驗證程序的正確性”,而更重要的是“掌握調試方法和技巧”。因此上機過程中要注意經驗的積累。

4 C語言提高關鍵

學好、用好C語言光靠入門知識還好似不夠的,必須學習好它的提高部分,也是C的精華部分:數組、函數和指針。

4.1 數組

數組是一組類型相同的數據的有序集合。它是一種簡單實用的數據結構。數組是用一個具有特定意義的名字代表順序排列的一組數,順序號就是下標變量的值。[3]在學習數組時,應該重點掌握:一維數組、二維數組和字符數組的定義、初始化和引用。尤其是基本的概念。如:int a[10]和a[8]的區別,二維數組的存放形式等。

4.2 函數

函數是實現語言模塊化結構的重要體現。在設計程序的過程中,經常會在不同的程序段中出現有相同或相似功能的小塊程序。如果在每個不同的程序段中都反復出現這樣的小塊程序,那么對整個大程序來講它的可讀性會降低,同時也會給設計者和讀者帶來不必要的麻煩。這就好比建造一座大樓,我們主要要做的工作是結構的設計,對于門窗、水泥和鋼材等施工材料,直接可以從廠家購買使用即可,而沒有必要再專門的成立門窗生產廠、水泥生產廠和鋼材生產廠來生產這些施工材料。因此,我們就可以將反復出現的小塊程序組成在一起形成一個模塊,然后其他的函數就可以通過語句直接調用這些模塊即可,這是函數的主要思想。

想要學好函數還得在這些方面下工夫:函數的定義、函數的參數、函數的值、局部變量和全局變量的一些基本概念;同時對于函數的調用(嵌套調用、遞歸調用等)過程要特別注意,一定要理清調用的關系及參數的正確傳遞。

要學好函數。善于利用函數減少重復編寫程序代碼的工作量。

4.3 指針

指針部分是C語言精華中的精華,主要是因為指針的應用可以使程序更加簡潔、緊湊和高效。指針使用的好處是顯而易見的,但是要學好用好它卻不是很容易的,學好指針的關鍵是要深入理解基本的概念,如指針、變量的指針、指針變量等;另外還要注意與前面的知識相聯系,如指針和數

5 結束語

C語言的應用很廣,著名的UNIX操作系統就是用C語言來寫的。現在的C++也是在C語言的基礎上發展起來的。本文粗淺地談了C語言的學習,由于篇幅所限,只是提供了學習的方法和途徑。所以有興趣的初學者應在入門之后反復練習,悉心揣摩,由淺入深,循序漸進,就一定能熟練地掌握和運用好C語言。

參考文獻:

[1] 譚浩強. C程序設計[M]. 北京:清華大學出版社,1997.

c語言范文第3篇

區別:

1、C語言適用范圍大,可移植性好,嵌入式的C語言是跑在嵌入式的開發板上的,CPU和我們電腦不一樣,所以編譯器也是不一樣的,生成的可執行程序也是不一樣的;

2、C語言允許直接訪問物理地址,可以直接對硬件進行操作,嵌入式有很多時候會受到硬件的限制,同時,在編寫嵌入式的程序時,對于實時性要求可能會很高;

3、C語言程序生成代碼質量高,程序執行效率高,由于嵌入式系統一般內存,cpu等資源有限,編程時需要特別考慮系統的高效性。

(來源:文章屋網 )

c語言范文第4篇

考研有四門課:數學、英語、政治、專業課,如果不是計算機專業的,不需要考C語言。

C語言:是一門通用計算機編程語言,應用廣泛,C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。

盡管C語言提供了許多低級處理的功能,但仍然保持著良好跨平臺的特性,以一個標準規格寫出的C語言程序可在許多電腦平臺上進行編譯,甚至包含一些嵌入式處理器以及超級電腦等作業平臺。

(來源:文章屋網 )

c語言范文第5篇

1、編譯系統最底部出現241表示代碼中含有程序不認識的字符。

2、C語言是一門通用計算機編程語言,應用廣泛。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。盡管C語言提供了許多低級處理的功能,但仍然保持著良好跨平臺的特性,以一個標準規格寫出的C語言程序可在許多電腦平臺上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業平臺。

(來源:文章屋網 )

相關期刊更多

忻州師范學院學報

省級期刊 審核時間1個月內

忻州師范學院

徐州師范大學學報

省級期刊 審核時間1個月內

江蘇省教育廳

贛南師范學院學報

省級期刊 審核時間1個月內

贛南師范大學

主站蜘蛛池模板: 晋宁县| 农安县| 石阡县| 金门县| 宁都县| 晋州市| 阿克苏市| 龙陵县| 贵溪市| 洪雅县| 青州市| 桃园县| 宜丰县| 自贡市| 秦安县| 涿州市| 兰溪市| 铅山县| 漳州市| 建昌县| 河间市| 孝昌县| 柏乡县| 封丘县| 望江县| 兴宁市| 谢通门县| 呼和浩特市| 荆门市| 平安县| 神池县| 隆林| 天祝| 成武县| 阳西县| 钦州市| 榕江县| 崇仁县| 黄大仙区| 蕲春县| 育儿|