網站首頁 個人文檔 個人總結 工作總結 述職報告 心得體會 演講稿 講話致辭 實用文 教學資源 企業文化 公文 論文

C語言見習報告多篇

欄目: 實用文精選 / 發佈於: / 人氣:1.57W

C語言見習報告多篇

C語言是一種計算機程序設計語言,屬高級語言範疇。它既具有高級語言的特點,又具有彙編語言的特點。通過見習做一報告,本文是C語言見習的報告,僅供參考。

C語言見習報告一:

班級:姓名:

實驗名稱:

電話訂餐信息處理

實驗目的:

題目要求:

一個小飯館的生意非常紅火,要想用餐必須提前一天打電話預訂,假設我們是飯館負責接受

電話預訂的服務員,我們需要做些什麼呢?首先,需要準備一張大小適當的白紙,等待顧客的電話。李紅最先打進了電話,她預約第2天中午12點用餐,用餐人數5人,服務員在紙上做了如下記錄:“李紅 12點 5人”;接着,劉娜、汪涵、孫杰和趙君分別來了電話,服務員根據他們的要求做了記錄,此時紙上記錄的內容是:

李紅 12點 5人

劉娜 11點 2人

汪涵 11點20分 3人

孫杰 10點30分 5人

趙君 13點20分 6人

孫杰隨後又來電話,將用餐時間推後一個小時,那麼記錄的內容也應該做相應的修改。劉娜來用餐以後,可以將其信息從紙上劃去

編寫程序處理電話訂餐的情況

實驗步驟:

首先建立結構體類型,然後函數聲明,編寫主函數,定義函數,調用函數。完成後,對程序進行調試,確定所編寫的程序是否能夠運行。

實驗內容:

#include

#include

#define max 30

struct guest

{ intnum;

char name[40];

char time[20];

int sum;

}guestlink[max];

void insert(int _p);

void inquire(int);

void change(int);

void dele(int _p);

void show(int);

void main()

{ inti;

int count=0;

do

{0

printf("1.......插入n");

printf("2.......查詢n");

printf("3.......修改n");

printf("4.......刪除n");

printf("5.......顯示n");

printf("6.......退出n");

scanf("%d",&i);

switch(i)

{

case 1: insert(&count);break;

case 2: inquire(count);break;

case 3: change(count);break;

case 4: dele(&count);break;

case 5: show(count);break;

case 6:break;

default:printf("輸入錯誤!");break;

}

}while(i!=6);

}

void insert(int _p)

{ inti,number;

if(_p==max)

{ printf("用餐已滿n");return;}

printf("請輸入編號:");

scanf("%d",&number);

for(i=0;i<_p;i++)

if(guestlink[i]==number)

{ printf("已有相同的編號");return;}

guestlink[i]=number;

printf("請輸入姓名:");

scanf("%s",guestlink[i]);

printf("請輸入人數:");

scanf("%d",&guestlink[i]);

printf("請輸入用餐時間:");

scanf("%s",guestlink[i]);

(_p)++;

}

void inquire(int p)

{ inti,number,flag=1;

printf("請輸入要查詢的編號");

scanf("%d",&number);

for(i=0;i

if(guestlink[i]==number)

{ printf("姓名:%s",guestlink[i]);

printf("用餐時間:%s",guestlink[i]);

printf("人數:%dn",guestlink[i]);

flag=0;

}

if(i>=p&&flag==1) printf("所查詢的編號不存在");

}

void change(int p)

{ inti,number,flag=1;

printf("請輸入要修改的編號");

scanf("%d",&number);

for(i=0;i

if(guestlink[i]==number)

{ printf("請輸入姓名:");

scanf("%s",guestlink[i]);

printf("請輸入用餐時間:");

scanf("%s",guestlink[i]);

printf("請輸入人數:");

scanf("%d",&guestlink[i]);

flag=0;

}

if(i>=p&&flag==1) printf("所查詢的編號不存在");

}

void dele(int _p)

{ inti,j,number,flag=1;

printf("請輸入要刪除的編號");

scanf("%d",&number);

for(i=0;i<_p&&flag;i++)

if(guestlink[i]==number)

{for(j=i;j<_p-1;j++)

guestlink[j]=guestlink[j+1];

flag=0;

(_p)--;

}

if(i>=_p&&flag==1) printf("輸入的編號不存在");

}

void show(int p)

{ inti;

printf("編號 姓名 用餐時間 人數n ");

for(i=0;i

{ printf("%d",guestlink[i]);

printf("%8s",guestlink[i]);

printf("%8s",guestlink[i]);

printf("%8dn",guestlink[i]);

}

}

實驗結果:

實驗體會:

通過這次實踐讓我覺得用C語言在生活中的應用佔有很大的比重,這次編程,讓我體會到了學習C語言的樂趣,以及運用c語言給人們帶來的方便。作為一名初學者,我瞭解到了計算機語言的神祕性和邏輯性,將算法與數據結構的充分結合,體現了程序的內涵,也同時展現了C語言的深度。也是因為這次實踐的過程,加深了我對c語言的興趣,也意識到學習c語言是需要耐心和細心的。只有透徹的學習,才能有熟練的運用。

C語言見習報告二:

一、實習時間:20_年x月x日—20_年x月x日

二、實習地點:第一微機室

三、實習目的:

1、熟悉我們自己所用的計算機的C語言開發環境,並且能夠熟練掌握,達到錯誤能找到原因並且加以改正。

2、加深對課本理論知識的理解,進一步掌握書中重點、難點實例,鍛鍊自己的編寫程序能力和實際應用能力。

3、上機調試程序的過程中,發現錯誤,解決錯誤,保證程序的正確運行,運行結果與給定結果完全相同。

4、學會用書中基本知識解決實際中的一些問題,將書本所學的內容與實際操作相結合,掌握把實際問題轉變為C語言描述的算法的方法,明確思路。

將自身的不足與缺陷改掉,養成良好編輯風格

5、培養我們的主觀能動性、溝通、表達能力和團隊合作意識,為我們以後的發展打下基礎。

四、實習內容及方法:

在本次實習中,我們採用了由淺及深、由易到難的實習方法,而且也是按照書本的教學進程內容進行的,同時採取了實際應用與理論相結合的方法,在機房裏面實習,一邊理解,思考做題的思路與解法,另一邊就可以馬上進行上機實際操作。這對於我們加深對C語言的理解、操作以及動手能力都有了很大的幫助與提高。

實訓的內容主要分為了七個版塊:

第一版塊:

1、Turbo

C運行環境。

瞭解TC的基本環境,熟悉常用菜單項和快捷鍵:在這一小節中,需要熟練的掌握並應用Turbo C的運行環境,和基本配置。Turbo C是在計算機上廣泛使用的一個C語言開發環境,它具有方便、直觀、易用的界面和豐富的函數庫。它把程序的編輯、編譯、連接和運行等操作去不都集中在一個界面上進行,使用非常方便。並且Turbo C不需要特別安裝,只需要將其拷貝到硬盤上就可以使用了。 為了方便管理用户的程序文件和維Turbo C2.0的運行環境,客户應在機子

上建立自己的工作目錄,一邊用來存放自己所需要開發的源程序文件。下面就是建立怎樣自己文件夾,在空白區域內輸入自己所建立的文件夾路徑即可。

2、C程序的編輯、編譯、連接和運行過程。

掌握C程序的運行步驟,初步瞭解C程序的特點。在Turbo C的運行中,快捷鍵使用非常方便,只需Ctrl+菜單欄中菜單名的首字母即可。

上面是一個程序編譯與鏈接的截屏。第一個Compile to OBJ將源程序編譯為OBJ文件,Make EXE file 編譯連接一次進行,Link EXE file將OBJ文件連接為EXE文件。

3、VC6.0環境的熟悉,自己按照軟件並在軟件中能夠調試簡單的C語言程序。

第二版塊:

1、C語言數據類型:整型、實型、字符型。

C語言的函數類型非常豐富,除了這幾類以外,還有實型、數組、指針、結構體等,在這一小節中,主要了解關於數據類型的定義、用法以及他們的存儲類型,一邊與以後靈活運用。

C語言中還有常量與變量之分,常量是在程序執行過程中其值不變的量。二且在C語言中常量不需要類型説明就可以直接使用,常量的類型是由常量的本身隱含決定的。

2、運算符及表達式。

在C語言中,預算符非常豐富運算靈活,常用的有以下幾個:

(1)算術運算符:+、-、_、/、%(取餘)及++(自增)、--(自減)。

(在這裏需要注意的是:“/”運算符,在C語言中兩邊都是整數的話,運算結果只取整數部分;“%”他的兩邊都必須是整數才可以運行;“__、--”運用這個運算符時要注意“先用後加(減)、先加(減)後用”的問題)

(2)賦值運算符:=及複合賦值運算符(+=、-=、_=、/=、%=等)。

(在這裏需要注意的是“=、==”的區別,要明確用法及所用的地方,“=”它的作用是賦值,“==”它的作用是判斷相等)

(3)逗號運算符:,(對於逗號表達式索要注意的是要明確它所用的地方以及在使用時所要注意的細節)。

瞭解三種運算符的優先級,掌握三種運算符及相應表達式的應用(詳見附錄)。

第三版塊:在這一節裏,我們實習了C語言的三大結構:

1、順序結構:

2、選擇結構:if??else,switch語句。

在這裏許啊喲我們學習的很多,因為只要是程序,就脱離不了這個三大結構的範疇。在這個學習裏我編寫了

(1)、輸入某年某月某日,判斷這一天是這一年的第幾天?。

(2)、給一個不多於5位的正整數,要求:一、求它是幾位數,二、逆序打印出各位數字。

(3)、某市不同車牌的出租車3公里的起步價和計費分別為:夏利7元,3公里以外,2.1元/公里;富康8元,3公里以外,2.4元/公里;桑塔納9元,3公里以外,2.7元/公里。編程:從鍵盤輸入乘車的車型及行車公里數,輸出應付工資。

源程序減附錄;

經過這幾個程序的練習,讓我聊股的掌握了選擇語句的用法以及精髓,同是這個用法和技巧已經深深的可在了我的腦海裏,還有同過這些個程序的編寫,讓我對以前有的絲絲而非的地放完全通透理解,獲益匪淺。

循環結構:while、do-while、for

在循環這一節裏,我們主要做了以下程序:

(1)、求200-300之間所有素數,每5個換行。

(2)、猜數字遊戲。規則為:輸入一個0-10之間的數字,有5次猜測機會。如果輸入0-4之間的數字,提示“太小了”;如果輸入5-7之間的數字,提示“接近了”;如果輸入9-15之間的數字,提示“太大了”;如果輸入8,提示“correct!”;如果次數超過5次,提示“沒有機會了,退出!”。

(3)、打印輸出如下圖形:(“◇”菱形)

(4)、有1、2、3、4個數字,能組成多少個互不相同且無重複數字的三位數?都是多少?

提示:可填在百位、十位、個位的數字都是1、2、3、4。組成所有的排列後再去掉不滿足條件的排列。

(5)、打印輸出九九乘法表。

我以前就對循環這一節裏的內容就理解的比較好,現在做這些題很順利的就做下去了,但在做的同是也會出現以寫小的問題,但這個讓我也更深一步的理解了循環語句的用法、思路以及其中的精華。

總的對這一節來説,使自己更神一步的理解了選擇、過程中需要注意的一些細節問題。

第四版塊:

1、一、二維數組的定義、引用及初始化。

初始化:

一維數組:初始化賦值的一般形式為: static 式]={值,值??值}; 其中static表示是靜態存儲類型,態存儲數組和外部存儲數組才可作初始化賦值二維數組:

a.可以只對部分元素賦初值,未賦初值的元素自動取b.如對全部元素賦初值,則第一維的長度可以不給出。2、一、二維數組的應用。

在一維數組的應用中,要與循環嵌套使用,用,但是在這裏,嵌套還要是循環的嵌套,因為只有這樣使用才可以使程序更加簡潔、簡便。就像第五題:有一個班4個學生,(1)求每一門課程的平均分; (2)求每一個學生的平均分;

思路:定義一個二維數組,用二重循環輸入這個數組,然後進行相加,在求平均直,最後在用二重循環進行輸出。

循環的用法以及在使用類型説明符 數組名[常量表達 C語言規定只有靜0值。 門課。編程實現如下功能:

在這裏,進行了求平均值的過二維數組要與也要與循環嵌套使5程。這裏進行了二重循環輸出。

第五版塊:

1、函數的定義和調用

函數可分為庫函數和用户定義函數兩種。

(1)庫函數

庫函數只不需要用户自己定義的,只需要在用的時候將其調用出來用就可以了,非常方便,並且C語言有這豐富的函數庫。

(2)用户定義函數

用户自己定義的函數,是屬於一個自定義範疇,自己定義的函數不僅要在程序中定義函數本身, 而且在主調函數模塊中還必須對該被調函數進行類型説明,然後才能使用。

2、函數參數和函數值

(1)無 參函數

函數定義、函數説明及函數調用中均不帶參數。 主調函數和被調函數之間不進行參數傳送。 此類函數通常用來完成一組指定的功能,可以返回或不返回函數值。

(2)有參函數

也稱 為帶參函數。在函數定義及函數説明時都有參數, 稱為形式參數(簡稱為形參)。在函數調用時也必須給出參數, 稱為實際參數(簡稱為實參)。 進行函數調用時,主調函數將把實參的值傳送給形參,供被調函數使用。

(1)有返回值函數

此類函數被調用執行完後將向調用者返回一個執行結果, 稱為函數返回值。由用户定義的這種要返回函數值的函數,必須在函數定義和函數説明中明確返回值的類型。

(2)無返回值函數

此類函數用於完成某項特定的處理任務, 執行完成後不向調用者返回函數值。這類函數類似於其它語言的過程。 由於函數無須返回值,用户在定義此類函數時可指定它的返回為“空類型”, 空類 型符的類型説明為“void”。

2、函數的嵌套調用和遞歸調用

C語言中不允許作嵌套的函數定義。因此各函數之間是平行的,不存在上一級函數和下一級函數的問題。 但是C語言允許在一個函數的定義中出現對另一個函數的調用。 這樣就出現了函數的嵌套調用。即在被調函數中又調用其它函數。

這以小節內容經過幾個練習題的聯繫,讓我掌握到了其中的主要部分,對此也比較的明確。

4、局部變量和全局變量及變量的存儲類別

局部變量:局部變量也稱為內部變量。局部變量是在函數內作定義説明的。其作用域僅限於函數內, 離開該函數後再使用這種變量是非法的。

全局變量:全局變量也稱為外部變量,它是在函數外部定義的變量。 它不屬於哪一個函數,它屬於一個源程序文件。其作用域是整個源程序。在函數中使用全局變量,一般應作全局變量説明。 只有在函數內經過説明的全局變量才能使用。全局變量的説明符為extern。 但在一個函數之前定義的全局變量,在該函數內使用可不再加以説明。

在C語言中,對變量的存儲類型説明有以下四種:auto 自動變量 register 寄存器變量 extern 外部變量 static 靜態變量

在局部變量中所定義的變量,只能在該函數中使用,在函數編輯時,預處理命令下定義的變量屬於全局變量,在每個函數中都可以使用,傳遞參數時,不用傳遞全局變量。

在這裏,我主要説的是第二個練習題,它的思想是一個加密算法。思路是:現編寫一個主程序,實現函數調用,在子函數中實現加密算法並且輸出。是將接收的值設置為一個全局變量。就像下面的這個例子:在這裏,將所輸入的值進行分解成個、十、百、千位,分別進行加密算法。

加上與第四位對調,第三位與第二位對調。在最後輸出結果。 第六版塊:

1、指針、指針變量的概念

指針的基本概念 在計算機中,所有的數據都是存放在存儲器中的。存儲器中的一個字節稱為一個內存單元, 不同的數據類型所佔用的內存單元數不等,如整型量佔2個單元,字符量佔1個單元等,紹。為了正確地訪問這些內存單元, 必須為每個內存單元編上號。存單元的編號即可準確地找到該內存單元。內存單元的編號也叫做地址。 並且在使用函數在輸入

除以8以後的餘數,在將第一位 一般把 在第二章中已有詳細的介 根據一個內

既然在這裏進行加密算法,每位上的數6

根據內存單元的編號或地址就可以找到所需的內存單元,所以通常也把這個地址稱為指針。“指針變量”是指取值為地址的變量

2、數組的指針

一個數組是由連續的一塊內存單元組成的。 數組名就是這塊連續內存單元的首地址。一個數組也是由各個數組元素(下標變量) 組成的。每個數組元素按其類型不同佔有幾個連續的內存單元。 一個數組元素的首地址也是指它所佔有的幾個內存單元的首地址。 一個指針變量既可以指向一個數組,也可以指向一個數組元素, 可把數組名或第一個元素的地址賦予它。如要使指針變量指向第i個元素可以把i元素的首地址賦予它或把數組名加3、指向字符串的指針 返回指針的函數(1)、字符串指針變量本身是一個變量,串本身是存放在以該首地址為首的一塊連續的內存空間中並以‘結束。字符數組是由於若干個數組元素組成的,它可用來存放整個字符串。(2)、對字符數組作初始化賦值,必須採用外部類型或靜態類型,串指針變量則無此限制;

(3)、對字符串指針方式 char _ps="C Language";ps="C Language";而對數組方式:static char st[]={"C Language"}char st[20]; st={"C Language"};而只能對字符數組的各元素逐個賦值。3、指針數組及指向指針的指針

指針數組的説明與使用一個數組的元素值為指針則是指針數組。是一組有序的指針的集合。 指針數組的所有元素都必須是具有相同存儲類型和指向相同數據類型的指針變量。

指針數組説明的一般形式為: 類型説明符在指針這一小節,主要是用指針實現:輸入數對換,把最大的數與最後一個數對換。寫3個函數:輸入個數。

在這裏進行函數的調用,一個輸入函數,一個操作函數,一個輸出函數。

i賦予它。

而字符