久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

生產實習報告

時間:2019-05-14 19:21:27下載本文作者:會員上傳
簡介:寫寫幫文庫小編為你整理了多篇相關的《生產實習報告》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《生產實習報告》。

第一篇:生產實習報告

一.實習記錄

1.7月2日

① 講述Gcc Gcc工具鏈四個步驟:預處理、編譯、匯編、鏈接。

在Linux操作系統下,在終端中文本編輯的命令為vim +文件名(如test123.c),回車進入文件,然后進行編寫。編譯命令:gcc +源文件名+-o+可執行文件名。運行:./ +可執行文件名。輸入命令gcc-c test.c 時,則會生成.o文件。

在文本編輯情況下,有三種模式:命令、輸入、末行,它們之間的轉換關系圖為:

a:輸入i/o/a;b:esc;c:冒號,其中可以為wq:保存退出

q!不保存退出,應注意的是保存退出需在末行模式下進行

幾種命令:gcc-o test test.c-Wall 把所有警告顯示出來

gcc-o test test.c-O2

提高效率(在底層開發運用)

gcc-o test test.c-g

進入gdb調試模式

② Gdb調試器

可設置斷點、單步執行、查看變量、查看文件 a.-g 編譯

gcc 源文件-o 可執行文件名-g b.gdb空格./test 運行 c.l +數字

顯示代碼 d.b +數字/函數名

設置斷點 e.r

執行程序 f.p +變量

打印變量 g.n 單步執行

h.c 依次繼續往下執行

Ctrl +c停止 i.q 退出

j.s 進入函數

info break 斷點信息

快捷鍵:方向鍵:翻命令

Tab鍵:補全命令

修改vim屬性命令:vim ~/.vimrc(~表示當前用戶根目錄,.表示隱藏文件)然后編寫:set tabstop=4 set

shiftwidth=4 set

autoindent set

cindent set

nu 2.7月3日

① 版權和版本聲明:

位于頭文件和函數定義的開頭,包括版本、作者、更新日期 注釋:函數介紹、輸入參數、輸出參數、返回值 /***** 函數名稱: 函數功能介紹: 函數參數;函數返回值: 其他: *****/ int GStuNum,匈牙利命名規則;int g_stu_num,unix規范

調用多文件編譯

gcc-o test test.c fun.c 兩個源文件生成一個test文件 編寫makefile文件:vim makefile,make編譯。在makefile文件里,要有目標并寫出依賴,命令前需加tab鍵。例如: main:test.o

fun.o

gcc-o main-test.o fun.o

test.o:test.c

gcc-c test.c

fun.o:fun.c

gcc-c fun.c

如圖:

也可以用變量代替:開頭CC=gcc(PC平臺),CC=arm-linux-gcc(arm平臺),則可寫成:

$(CC)-o main test.o fun.o

$為使用變量值 clean:rm *.o-rf

rm main-rf ② 數據結構

C基本語法:1.變量2.語句3.分支4.循環5.函數6.存取7.類8.封裝集成。C++的特性:封裝,集成,多態

鏈表,最重要的是雙向鏈表(單環),基本操作:添加、查找、刪除。定義:typedef struct node{ datatype data;struct node *next;}LNode,*LinkList;指向本結點類型的指針是實現鏈表的基礎,數據量大時用鏈表存儲,少時用數組。指針最大值為2^32=4G,指針0~4G的一個數字。頭指針為“NULL”則表示一個空表。內存分配函數有malloc和calloc.語句:算術語句,如i=i+1;i++;關系語句,i>2;邏輯語句,i<20&&i>10兩個同時成立就成立,||(或)一個成立就成立; 分支:if else 計算閏年if(year%400==0||(year%4==0&&year%100!=0))循環:while(),do{}while();for(i=0;i<10;i++)i=0只在第一次時執行。r回車字符,%x指針地址

usleep();sleep(1);1秒跳一次fflush(stdout);題目(1.聲明數組2.錄入學生信息3.求最高分4.打印)代碼:struct stu{int s;int num;char name[16];};

int main {struct stu stu_arry[10];} 3.7月4日 鏈表

鏈表的創建與遍歷及查找、增加、刪除結點各項操作,給出部分代碼進行練習,對鏈表的操作進行熟悉。著重強調增加結點(尾插入)的操作,得到尾結點的代碼如下:

for(p=h;p!=NULL;p=p->next){if(p->next==NULL)pp=p;} p=malloc(sizeof(struct node));p->num=num;strcpy(p->name,name);pp->next=p;p->next=NULL;return h;4.7月5日

① 熟悉鏈表的各項操作,老師給出代碼,加強出錯部分的練習。刪除結點時的考慮,刪除的是頭結點和非頭結點,代碼如下:

struct node *link_del_node_by_num(struct node *h,int num){

struct node *p;

struct node *pp;

/*find node by num*/

for(pp=p=h;p!=NULL;pp=p,p=p->next)

{

if(p->num==num)

break;

}

/*del node is head node*/

if(p==h)

{

h=h->next;

free(p);

}

/*del node is not head node*/

else

{

pp->next=p->next;

free(p);

}

if(p==NULL)

return NULL;

return h;} ②哈希表

哈希表存儲的基本思想以數據表中的每個記錄的關鍵字k為自變量,通過一種函數H(k)計算出函數值。把這個值解釋為一塊連續存儲空間(即數組空間)的單元地址(即下標),將該記錄存儲到這個單元中。

構造方法:1.直接定址法 H(k)=k+c 2.除留余數 H(k)=k%m 3.平方取中法 取關鍵字平方后的中間幾位作為哈希函數的地址沖突解決方法:開放定址法 H(k)=(k*k+i)%m,Hi=(H(k)+d(i))%m,i=1,2,??k(d為增量函數)編寫代碼,實現對哈希表的添加、查找操作。

5.7月6日

整理哈希表的操作代碼,對各個部分進行完善,并編寫出了刪除結點的程序代碼。在刪除頭結點的時候,程序運行結果總是出錯,詢問老師過后,經過老師的講解,最后完成了代碼。

6.7月7日

接口設計 詞典的存儲格式:文本文件,索引;查詢方式:字符串匹配,二分查找 版本管理工具(git)找出版本之間的差異,回到以前的版本,原則:迭代開發(逐漸找出功能)、接口分離

$ ^ 所有的依賴文件,$< 只依賴于第一個文件,在linux終端下,查詢手冊用man命令。給出部分代碼,查詢手冊以便理解。

7.7月8日

講述部分函數的意義,memset直接設置內存,memset(trans,0,WORD_LEN);從trans開始,長度為多少,都設為0。Shift+* 移光標

#if 0??#endif 此時這里的內容不需要編譯;#if 1??#endif 能打開

8.7月9日

①如何將windows中的文件傳到虛擬機中?

控制面板—>網絡連接—>Vmware Workstation啟用,在終端輸入命令ifconfig eth 0 找到地址192.168.8.131;然后虛擬機打開ftp命令 /etc/init.d/vsftpd start nestar-an|grep 20是查看ftp狀況的,修改密碼命令passwd student,解壓縮文件tar xf dict.tar.bz2 ②文件的操作

FILE *pFile=fopen(filename,“rb”)fclose(pFile)關閉文件

fread(buffer,size,size_count,pFile)從文件可讀取size*size_count到buffer中。在代碼中實現退格鍵的操作。

9.7月10日

實現了退格鍵操作,并對代碼進行完善。下午編寫刪除操作,結果失敗。

10.7月11日

老師驗收程序,進行演示。二.設計過程

1.題目

(1)建立一個哈希表,并實現添加、刪除、查找的功能(2)設計一個英漢字典,要求實現退格輸出功能

2.題目思路

⑴哈希表存儲的基本思想以數據表中的每個記錄的關鍵字k為自變量,通過一種函數H(k)計算出函數值。把這個值解釋為一塊連續存儲空間(即數組空間)的單元地址(即下標),將該記錄存儲到這個單元中。需要用除留余數法構造。首先找到地址標號后,然后再根據鏈表的方式存儲進去。能夠實現可選擇性的添加數據,然后顯示出哈希表。可根據查找的數據,顯示出位置,及根據數據刪除時,出現的新哈希表。

⑵英漢詞典需要在二進制文件里,建立一個字典庫,然后再查找編寫一系列功能函數。此程序用的是聯想輸入法,在非標準模式下實現。能夠按首字母查詢并且實現選擇單詞,出現意思的功能,并且能夠實現退格輸出。此時需要編寫查找匹配單詞的函數,及得到單詞意思的函數。老師已經給出部分代碼,再編寫實現退格鍵的操作即可。

3.如何實現

⑴實現哈希表的流程圖

利用除留余數,得到數據位置的代碼 int hash_hash_fun(int data){

int pos;

pos=data%HASH_MAX;

return pos;} 在添加數據時,應給P開辟空間,之后找到所屬位置,進行存儲即可。部分主要代碼如下:

/*malloc memory*/

p=(struct node*)malloc(sizeof(struct node));

/*input data*/

printf(“input add data:n”);

scanf(“%d”,&add_data);

getchar();

pos=hash_hash_fun(add_data);

p->num=add_data;

p->next=hash[pos];

hash[pos]=p;

在查找數據時,首先進入 hash_hash_fun函數,找到位置后,方可進行查找,此函數是整個程序的關鍵,輸出結果為位置加上數據的形式。代碼如下:

struct node *hash_find(struct node *hash[],int f_num){

int pos;

struct node *p;

printf(“input find f_num:n”);

scanf(“%d”,&f_num);

pos=hash_hash_fun(f_num);

for(p=hash[pos];p!=NULL;p=p->next)

{

if(p->num==f_num)

{

printf(“[%d] %dn”,pos,p->num);

break;

}

}

if(p==NULL)

printf(“no find.n”);

return p;}

在刪除的時候,需要三方面的考慮,刪除的是頭結點,非頭結點,及指針所指的為空,這樣才能更準確的刪除表中數據。代碼如下:

struct node *hash_del(struct node *hash[],int num){

int pos;

struct node *h=NULL;

struct node *p;

struct node *pp;

printf(“input del num:n”);

scanf(“%d”,&num);

pos=hash_hash_fun(num);

for(pp=p=h=hash[pos];p!=NULL;pp=p,p=p->next)

{

if(p->num==num)

break;

}

printf(“[%d] %dn”,pos,p->num);

if(p==h)

{

hash[pos] = p->next;

free(p);

}

else

{

pp->next=p->next;

free(p);

}

if(p==NULL)

return NULL;} ⑵實現英漢詞典退格功能 在實現查找功能時,需要進行輸入數據的判斷如果是字母的話,應怎樣運行,如果是退格鍵時,是怎樣,以及是數字時是怎樣,這里需調用兩個函數isalpha()判斷字母和isdigit()判斷數字。這里把字母的判斷和退格鍵的判斷寫到了一塊,代碼如下:

if(isalpha(c)||(c=='177'))

{

trans[n] = c;

//back space

if(c == '177')

{

n--;

if(n < 0)n = 0;

trans[n] = '

主站蜘蛛池模板: 国产精品96久久久久久| 内射中出无码护士在线| 亚洲欧美国产日产综合不卡| 中文字幕乱码人妻一区二区三区| 人人妻人人做人人爽精品| 亚洲欧洲日本综合aⅴ在线| 最新的国产成人精品2020| 精品成人免费一区二区不卡| 五级黄高潮片90分钟视频| 最近在线更新8中文字幕免费| 精品国产乱码久久久久乱码| 中文字幕+乱码+中文字幕无忧| 亚洲小说乱欧美另类| 亚洲av福利院在线观看| 午夜亚洲国产理论片中文| 99久久精品费精品国产| 丝瓜视频在线观看免费| 中国真实偷乱视频| 成人午夜精品无码区久久| 国产福利一区二区三区在线观看| 麻豆果冻传媒精品一区| 狠狠色噜噜狠狠狠狠2021| 男人靠女人免费视频网站| 亚洲毛片不卡av在线播放一区| 欧美牲交a欧牲交aⅴ久久| 亚洲国产欧美在线成人aaaa| 国产精品丝袜一区二区三区| 亚洲高清国产av拍精品青青草原| 精品人妻少妇一区二区| 国产精品午夜片在线观看| 亚洲伊人久久综合网站| 人妻精品久久无码专区涩涩| 国产无套内射又大又猛又粗又爽| 伴郎粗大的内捧猛烈进出视频观看| 亚洲欧洲自拍拍偷精品网314| 亚洲aⅴ在线无码播放毛片一线天| 精品久久久久久无码人妻蜜桃| 国产爆乳无码一区二区麻豆| 内射巨臀欧美在线视频| 无码国产精品一区二区vr| 久久天天躁狠狠躁夜夜躁2012|