中图网(原中国图书网):网上书店,尾货特色书店,30万种特价书低至2折!

歡迎光臨中圖網 請 | 注冊
> >>
高等學校計算機基礎教育教材精選C程序設計案例教程(第3版)/張莉

包郵 高等學校計算機基礎教育教材精選C程序設計案例教程(第3版)/張莉

作者:張莉
出版社:清華大學出版社出版時間:2018-11-01
開本: 其他 頁數: 406
本類榜單:教材銷量榜
中 圖 價:¥29.0(4.9折) 定價  ¥59.5 登錄后可看到會員價
加入購物車 收藏
開年大促, 全場包郵
?新疆、西藏除外
溫馨提示:5折以下圖書主要為出版社尾貨,大部分為全新(有塑封/無塑封),個別圖書品相8-9成新、切口
有劃線標記、光盤等附件不全詳細品相說明>>
本類五星書更多>

高等學校計算機基礎教育教材精選C程序設計案例教程(第3版)/張莉 版權信息

高等學校計算機基礎教育教材精選C程序設計案例教程(第3版)/張莉 本書特色

C程序設計案例教程(第3版)為在線教學版,北京市高等教育教學成果二等獎教材 C程序設計案例教程(第3版)為在線教學版,榮獲首批國家精品在線開放課程教材、北京市高等教育教學成果二等獎教材

高等學校計算機基礎教育教材精選C程序設計案例教程(第3版)/張莉 內容簡介

C程序設計案例教程(第3版)C共有13章,通過案例全面解析C語言程序設計的知識要點、實現方法、基本原理,以及C語言的語義語法規范等,覆蓋了相關知識內容與重點,主要包括計算機程序設計算法與實現、C語言程序設計結構組成和編譯運行、Dev C++和Microsoft Visual studio 2017等常用IDE特點及使用、不同數據存儲類型及相關數據計算、各類程序流程控制命令與控制結構、數組的創建定義與使用、函數定義與各類變量作用、編譯預處理與宏定義使用方法、數據存儲地址操作與指針變量、構造類型與自定義類型定義與使用、鏈表結構創建及應用、按位運算及應用、文件系統管理與數據文件操作使用等等,內容完整,共享資源豐富。修訂版突出實用案例分析,系統學習掌握知識要點應用與實踐。更適合學為中心線上線下混合式教學

高等學校計算機基礎教育教材精選C程序設計案例教程(第3版)/張莉 目錄

目錄

C程序設計案例教程(第3版)第1章計算機程序設計算法實現1
1.1程序設計概述1
1.1.1程序設計語言1
1.1.2程序設計過程3
1.2程序設計算法與實現4
1.3計算機程序算法的表示5
1.3.1自然語言描述5
1.3.2程序流程圖描述6
1.3.3NS圖描述8
1.3.4程序設計語言描述8
1.4程序算法實現案例分析12
1.5練習題15
第2章C語言程序設計結構組成與編譯運行16
2.1C語言程序設計概述16
2.1.1C語言程序設計的發展16
2.1.2C語言程序設計的特點17
2.1.3C語言程序的組成結構19
2.2C語言程序的編譯與運行21
2.2.1編輯、調試與編譯運行步驟21
2.2.2常用編譯運行環境22
2.3C語言的語義規范34
2.3.1C語言程序的基本規范34
2.3.2C語言的標識符37
2.3.3C語言的關鍵字38
2.4練習題38
第3章數據存儲類型與相關運算39
3.1數據存儲方式39
3.1.1數據存儲與數制轉換39
3.1.2數據存儲類型與定義41
3.1.3存儲地址與占用空間43
3.1.4數據常量分類45
3.1.5程序變量定義49
3.2數據存儲方式與應用50
3.2.1數據存儲的正負數問題50
3.2.2數據變量取值范圍51
3.2.3實型數據存儲方式55
3.2.4字符型數據存儲方式58
3.2.5各種存儲類型混合運算61
3.3運算符與表達式62
3.3.1運算符優先級與強制類型轉換62
3.3.2算術運算符與算術表達式64
3.3.3賦值運算符與賦值表達式67
3.3.4逗號運算符與逗號表達式70
3.3.5關系運算符與關系表達式72
3.3.6邏輯運算符與邏輯表達式73
3.3.7條件運算符與條件表達式75
3.4練習題77
C程序設計案例教程(第3版)目錄第4章順序結構程序設計79
4.1C程序設計流程控制79
4.1.1基本流程控制79
4.1.2順序結構流程控制80
4.2基本順序結構命令語句82
4.2.1賦值語句82
4.2.2空語句82
4.2.3復合語句83
4.2.4無條件轉向語句83
4.2.5函數調用語句84
4.2.6表達式語句85
4.3常用基本輸入輸出函數86
4.3.1字符類型輸入函數86
4.3.2字符類型輸出函數88
4.3.3格式化輸入輸出函數89
4.4練習題96
第5章條件分支結構程序設計98
5.1條件分支結構98
5.1.1簡單if分支結構98
5.1.2ifelse分支結構100
5.1.3嵌套的ifelse條件分支結構102
5.1.4else if多路分支結構106
5.2switchcase分支語句108
5.2.1switchcase分支結構109
5.2.2switchcase分支語句的應用111
5.3綜合案例分析115
5.4練習題120
第6章循環控制結構程序設計122
6.1循環控制結構122
6.1.1循環控制結構組成要素122
6.1.2while循環控制結構123
6.1.3dowhile循環控制結構130
6.1.4for循環控制結構133
6.2循環控制結構的嵌套138
6.3循環控制結構的輔助控制命令141
6.3.1無條件轉移命令goto141
6.3.2終止循環命令break142
6.3.3提前進入下一次循環命令continue145
6.4幾種循環控制結構的比較147
6.5循環控制結構綜合案例分析147
6.6練習題153
第7章數組的定義及應用155
7.1數組的性質155
7.2一維數組的定義與引用157
7.2.1一維數組的定義157
7.2.2一維數組元素的引用158
7.2.3一維數組的初始化159
7.2.4一維數組應用案例160
7.3多維數組的定義與引用166
7.3.1二維數組的定義與引用166
7.3.2二維數組程序算法案例171
7.3.3三維數組的定義與引用175
7.3.4多維數組的應用176
7.4字符數組與字符串操作177
7.4.1字符數組的定義與初始化177
7.4.2字符串的處理及應用179
7.4.3常用的字符串處理函數181
7.4.4字符數組應用案例188
7.5練習題193
第8章函數與變量195
8.1C語言函數的分類與應用195
8.1.1C語言函數分類195
8.1.2標準庫函數197
8.1.3自定義函數199
8.2自定義函數與函數類型202
8.3自定義函數參數與參數傳遞203
8.3.1形式參數和實際參數203
8.3.2數組作為函數參數205
8.4自定義函數的調用208
8.5函數的嵌套調用209
8.6函數的遞歸調用211
8.7函數變量的存儲與作用域215
8.7.1局部變量215
8.7.2全局變量217
8.8動態存儲變量和靜態存儲變量221
8.8.1程序變量的存儲類型221
8.8.2auto型變量223
8.8.3extern型變量224
8.8.4static型局部變量與全局變量224
8.8.5register型變量226
8.9全局函數和局部函數226
8.9.1局部函數227
8.9.2全局函數227
8.10函數與變量綜合案例分析230
8.11練習題237
第9章編譯預處理241
9.1編譯預處理命令241
9.2宏定義與宏代換242
9.2.1不帶參數的宏定義243
9.2.2帶參數的宏定義244
9.2.3宏定義作用域的終止248
9.3文件包含處理250
9.4條件編譯252
9.5練習題256
第10章地址與指針變量258
10.1變量的內存地址與指針258
10.1.1指針變量的定義260
10.1.2指針變量的賦值261
10.1.3指針變量運算符及運算262
10.1.4指針變量作函數參數265
10.2數組與地址指針267
10.2.1指向數組的指針變量267
10.2.2指向數組元素的指針變量268
10.2.3數組名作函數參數271
10.2.4指針數組的指針變量作函數參數273
10.2.5多維數組與指針變量276
10.3字符串與指針變量280
10.3.1字符串處理方法280
10.3.2字符串指針作函數參數284
10.4函數的指針及指向函數的指針變量286
10.4.1函數指針變量的定義287
10.4.2用函數指針調用函數287
10.4.3用函數指針變量作函數參數288
10.4.4返回指針值的指針函數290
10.5指針數組與指向指針數組的指針變量292
10.5.1指針數組292
10.5.2指向指針的指針變量295
10.6main()命令行參數傳遞297
10.7指針變量綜合案例299
10.8練習題304
第11章構造類型與自定義類型307
11.1結構體類型與結構體變量307
11.1.1結構體類型的定義307
11.1.2結構體類型變量的定義及引用309
11.2結構體數組的定義及引用314
11.2.1結構體數組的定義及初始化314
11.2.2結構體數組的引用315
11.3指向結構體類型數據的指針317
11.3.1指向結構體變量的指針317
11.3.2指向結構體數組的指針318
11.3.3結構體類型作為函數參數320
11.4鏈表結構及應用324
11.4.1靜態鏈表的創建及引用325
11.4.2動態鏈表的創建及引用326
11.4.3單向動態鏈表的創建及引用328
11.4.4在單向動態鏈表中插入結點332
11.4.5從單向動態鏈表中刪除結點338
11.5共用體類型與共用體變量343
11.5.1共用體類型及共用體變量的定義344
11.5.2共用體變量的引用345
11.6枚舉類型與枚舉變量348
11.6.1枚舉類型的定義348
11.6.2枚舉類型變量348
11.7自定義數據類型說明符350
11.8練習題356
第12章位運算操作357
12.1位運算符及運算操作357
12.1.1位運算及運算符357
12.1.2按位與運算358
12.1.3按位或運算359
12.1.4按位異或運算360
12.1.5按位取反運算360
12.1.6按位左移運算361
12.1.7按位右移運算362
12.1.8復合賦值位運算363
12.2位段定義及應用363
12.2.1位段的定義363
12.2.2位段的引用365
12.3位運算操作應用案例366
12.4練習題368
第13章文件系統管理與操作369
13.1文件的組成結構369
13.1.1文件的概念與構成369
13.1.2文件系統操作形式371
13.2緩沖文件的操作與使用372
13.2.1緩沖文件結構類型與文件指針372
13.2.2緩沖文件的標準庫函數373
13.3文件的打開與關閉374
13.3.1文件打開函數與操作模式374
13.3.2文件關閉函數的使用378
13.4文件中數據的讀寫操作379
13.4.1文件中字符數據的讀寫操作379
13.4.2文件中字符串數據的讀寫操作383
13.4.3文件中數值數據的讀寫操作386
13.4.4文件中數據的格式化讀寫操作388
13.5文件位置指針的定位391
13.5.1文件指針的定位操作391
13.5.2文件指針復位函數391
13.5.3文件指針當前位置測試函數392
13.5.4定位指針函數393
13.6文件操作錯誤的檢測394
13.6.1文件讀寫操作檢測函數395
13.6.2文件錯誤狀態清除函數396
13.7其他緩沖型文件函數397
13.7.1文件結束符測試函數397
13.7.2磁盤文件刪除函數398
13.8文件操作管理綜合應用案例分析400
13.9練習題403
附錄A常用字符的ASCII碼407
附錄B運算符的優先級與結合性408
參考文獻409
展開全部

高等學校計算機基礎教育教材精選C程序設計案例教程(第3版)/張莉 節選

第5章條件分支結構程序設計生活中常常會根據不同情況采取不同的處理措施解決實際問題,反映在程序設計中,這類問題的求解算法體現為根據不同的判定條件控制程序流程執行不同的程序段,其中判斷條件即求解表達式。本章主要內容如下:  簡單if分支結構;  ifelse分支結構;  嵌套的ifelse分支結構;  else if多路分支結構;  switchcase分支結構;  條件分支結構綜合案例分析。 5.1條件分支結構 條件分支結構又稱條件判斷結構或分支結構,是結構化程序設計流程控制的基本結構之一。當程序設計算法實現需要判斷不同情況進行相應處理時,就要使用條件分支結構控制程序流程走向。C程序設計條件分支結構的語句包括if語句的3種形式,即簡單if語句、ifelse語句和else if語句,以及多分支語句switchcase等,在使用時可根據具體問題的復雜程度做適當的選擇。下面分別加以介紹。 5.1.1簡單if分支結構 C語言中if語句是*基本的條件分支語句,用來判定是否滿足指定的條件,并根據條件表達式的值執行相應的操作。 簡單if語句的一般形式如下: if () \[語句\];其中,尖括號表示其中的內容為必選項,中括號表示其中的內容為可選項。語句也可以是用大括號括起來的一組命令語句構成的一條復合語句。 簡單if語句的執行流程如圖51所示。 圖51簡單if語句的執行流程 系統首先求解表達式。當表達式值為真時,則執行指定語句;否則跳過指定語句,接著執行指定語句下面的語句。 C程序設計案例教程(第3版)第5章條件分支結構程序設計例51編寫程序,比較兩個數的大小,按不同數據輸入情況輸出不同結果。 程序源代碼: /L5_1.c/ #include main() { int m,n; printf("Please input two numbers m,n="); scanf("%d,%d",&m,&n); if(m>n)/條件表達式m>n值為1時執行/ printf("The first number is bigger\\n"); if(n>m) printf("The second number is bigger\\n"); if(n==m) printf("The two numbers are equal\\n"); getch(); }分別運行3次程序,各次運行輸出結果如圖52所示。 圖52輸入不同數據的輸出結果 該程序用簡單的if結構對兩個變量m和n的值進行比較,完成3種情況的選擇處理。從程序中可以看出,if結構只在條件表達式為真時才執行指定的操作。如果程序應用只需實現單向分支結構,使用簡單if語句完成算法較為清晰、方便。 多個簡單的if結構配合,也可以處理稍微復雜一點的問題,如實現簡單的排序算法。以3個變量排序為例,隨機輸入3個數,分別賦予變量a、b、c,利用順序執行的簡單if語句實現排序算法,要求按變量a、b、c值由小到大輸出結果。 程序源代碼: #include "stdio.h" main() { float a,b,c,t; scanf("%f,%f,%f",&a,&b,&c); if(a>b) {t=a; a=b; b=t;}/借助臨時變量t,交換a、b兩個變量的值/ if(a>c)/值較小的a變量再與第三個變量c的值比較/ {t=a; a=c; c=t;}/至此a變量的值*小/ if(b>c)/剩余b變量的值再與c的值比較/ {t=b; b=c; c=t;}/至此b變量的值次小/ printf("%5.2f,%5.2f,%5.2f",a,b,c);/排序結果/ }程序中使用3個簡單if語句進行變量值的兩兩比較,用if語句判別變量值的大小,根據條件進行變量值的交換,每個if語句執行后較小的變量再與其余的變量作比較,*后輸出排序結果。 5.1.2ifelse分支結構 ifelse分支結構可實現同一表達式判斷下的兩路程序流程的選擇。ifelse語句的一般形式如下: if() \[語句1\]; else \[語句2\];同樣,ifelse中的控制語句也可以是用大括號括起來的一組語句構成的一條復合語句。ifelse語句的執行流程如圖53所示。 圖53ifelse語句的執行流程系統先求解表達式。當表達式值為真時,執行語句1;當表達式值為假時,執行語句2。整個結構只有一個入口和一個出口,符合結構化程序設計規范。利用ifelse語句可以實現兩路程序流程的分支選擇。 例52編寫程序,輸入一個年份值,檢查該年是否為閏年,輸出結果。檢查某一年為閏年的自然語言描述是: 年份值能被4整除,但不能被100整除;或者年份值只能被400整除。表達式為x%4==0&&x%100!=0||x%400==0。 程序源代碼如下: /L5_2.c/ #include main() { int x; printf("Please input the year to determined= "); scanf("%d",&x); if(x%4==0&&x%100!=0||x%400==0)/滿足閏年條件/ printf("%d is a leap year\\n",x); else/不滿足閏年條件/ printf("%d is not a leap year\\n",x); }圖54ifelse選擇結構 執行上述程序時,根據輸入的x值進行判斷。如果滿足閏年表達式,表達式值為1,則執行選擇語句中if命令后面的語句;否則表達式值為0,執行else命令后面的語句。編譯后運行兩次程序,運行結果如圖54所示。 如果ifelse條件分支的if和else后的命令語句執行的是給同一個變量賦值操作,則該算法也可以用條件運算符“?:”取代ifelse語句,實現相同的功能。 例53編寫程序,從鍵盤輸入一個字符,如果是小寫字母,則將其轉換為大寫字母,否則原樣輸出該字符。 程序源代碼: /L5_3.c/ main() { char ch; printf("please input a character:\\n"); scanf ("%c",&ch); ch=(ch>='a' && chprintf("ch=%c\\n",ch); }編譯后分別運行兩次程序。如果輸入小寫字母r,判斷條件運算表達式為真,執行運算符“?”后的賦值表達式,將ch-32的值賦給變量ch,得到的ch值為大寫字母R的ASCII碼值。如果輸入字符9,則由于不滿足條件運算表達式中的條件,執行運算符“:”后的賦值表達式,圖55條件運算表達式實現選擇運算 因此直接輸出該字符。兩次運行程序后的輸入和對應輸出結果如圖55所示。 與本例相似,選擇運算結果賦給同一個變量,如求*大值運算,源程序代碼如下: /L5_3_1.c/ #include main() { int a,b,c; scanf("%d,%d",&a,&b); c=(a>b)?a:b;/取a和b中大者賦給c / printf("The max number is %d",c); }程序運行后,輸入兩個數值,分別賦給兩個變量a和b,條件運算表達式運算取變量a或變量b中值較大者賦給變量c,輸出變量c值。 5.1.3嵌套的ifelse條件分支結構 ifelse結構解決了程序流程按條件兩路分支的問題。當按不同條件選擇兩個以上分支時,就需要使用if語句的嵌套結構,即if語句中還可包含if語句,形成層層嵌套的if語句。嵌套在ifelse結構if命令語句之后的內嵌ifelse結構形式為if() \[語句1\]; if() \[語句2\]; else \[語句3\]; else \[語句4\];嵌套的if語句結構邏輯關系是: 當選擇條件的值為真時,才會判斷“”的值,也只有當為真時,才會執行語句2,此時和條件同時滿足,是邏輯與的關系。這就是if語句嵌套結構的特點。 同樣,嵌套在ifelse結構else命令語句之后的內嵌ifelse結構的一般形式為if() \[語句1\]; else if() \[語句2\]; else if() \[語句3\]; else if() \[語句4\]; else\[語句5\];程序流程圖如圖56所示。 圖56嵌套在else命令語句之后的內嵌結構 例54編寫程序,實現符號函數的算法,即從鍵盤輸入一個數值賦給變量x。如果x值小于0,符號函數值為-1;如果x值等于0,符號函數值為0;如果x值大于0,符號函數值為1。檢驗輸出結果。 數學表達式: sign(x)=-1,x0,x=0 1,x>0程序源代碼: /L5_4.c/ #include main() { int number,sign; printf("Please type in a number x="); scanf("%d",&number); if(numbersign=-1; else if(number==0)/else包含條件(number>0)和(number=0)/ sign=0; else/else只包含條件(number>0)/ sign=1; printf("sign(x)=%d\\n",sign); }圖57符號函數的運行結果 運行3次,輸入3個不同的數,輸入和對應的輸出結果如圖57所示。 案例中if與else成對匹配,書寫成有層次的縮進形式易讀、易理解。習慣上嵌套的if語句盡可能在else之后,如果嵌套中只有if而沒有else,容易造成錯誤,這是因為else總是與前面*相近的不包含else的if語句匹配。為避免發生這種錯誤,習慣上應將嵌套中的if語句用大括號{ }括起來,例如: if(表達式1){ if(表達式2) 語句1 } else 語句2該案例中的else與*外層的if匹配,邏輯上不易出錯。 實際上程序算法并不是唯一的,可以有不同的邏輯表達方式,只要*終結果正確即可。當然,大型軟件開發還有程序優化等問題,只是不在本書討論的范圍內。現以符號函數為例再作一些案例分析,以進一步理解if嵌套的邏輯關系。為便于案例分析,首先給出正確的程序源代碼: main() { int x,y; scanf("%d",&x); if(xelse if(x==0) y=0; else y=1; printf("x=%d, y=%d\\n", x, y); }該程序算法已通過運行驗證,算法邏輯正確。 將程序的if語句嵌套關系改為以下程序段: if(x>=0) if(x>0)y=1; else y=0; else y=-1;該段程序的**個if條件x>=0包含兩種情況,需要嵌套if條件x>0語句,內嵌if語句的else命令意味著條件x==0,此處y等于0,算法正確。 若將程序的if語句嵌套關系改為以下程序段: y=-1; if(x!=0) if(x>0) y=1; else y=0;該段程序在ifelse之外先賦值y=-1。**個if條件x!=0也包含兩種情況,需要嵌套if條件x>0語句,滿足該條件則y=1。內嵌if語句受外層if條件x!=0約束,else意味著條件xif(x!=0) {if(x>0) y=1;} else y=0;增加了一對大括號,使else與外層if匹配,else隱含條件為x==0,執行y=0,整個程序段算法正確。 再看如下程序段: y=0; if(x>=0) if(x>0) y=1; else y=-1;該段程序在ifelse之外先賦值y=-1。**個if條件x>=0同樣包含兩種情況,需要嵌套if條件x>0語句,滿足該條件則y=1。內嵌if語句受外層if條件x>=0約束,else意味著條件x=0,而y等于-1,算法出現邏輯錯誤。可將該程序的嵌套關系作以下修改: y=0; if(x>=0) {if(x>0) y=1;} else y=-1;增加了一對大括號,使else與外層if匹配,else隱含條件為x當需要處理的分支選擇頭緒多且問題更加復雜時,可以在各種結構形式的if語句中再嵌套一個或多個if語句,形成更加復雜的嵌套。使用嵌套if結構,可以在ifelse結構中if命令后面嵌套,也可以在else命令后面嵌套。其組合形式可以表示為if (表達式1) if (表達式2) 語句1; else 語句2; else if (表達式3) 語句3; else if (表達式4) 語句4; else 語句5;其中的各if和else語句中又可以嵌套另外的ifelse語句。使用時注意if及else if 與else的配對關系,系統總是將else與其向上*接近的未配對的if匹配組合。使用內嵌簡單if語句時還應注意,簡單形式的if語句中不包含else語句,在嵌套邏輯上可以避免混亂。 5.1.4else if多路分支結構 嵌套的if結構豐富了程序流程按條件多路分支流程控制問題,當按不同條件選擇更多分支流程時,可以使用if嵌套結構,也可以使用else if多路分支結構。else if多路分支結構的一般形式為if() 語句1; else if() 語句2; else if() 語句3; … else if() 語句n; else 語句n+1;else if多路分支結構在邏輯關系上是由多個ifelse層層嵌套的ifelseifelse邏輯結構,其執行流程如圖58所示。 圖58ifelseifelse多路分支結構流程 ifelseifelse分支結構中的每個else if表達式控制著一個分支流程,程序執行時首先求解的值,當值為真時,執行語句1,執行后跳出并結束該選擇結構;當值為假時,則求解的值,當值為真時,執行語句2,執行結束也跳出并結束所在選擇結構;同樣,當值為假時,再繼續求解的值,當值為真時,執行語句后跳出選擇結構,否則繼續向下進行判斷;以此類推,直到的值為真,執行相關語句。如果所有的表達式值都為假,那么就執行*后一個else后面的語句。 實際上,ifelseifelse形式的if語句是ifelse形式的if語句的嵌套使用,利用它能夠實現多分支選擇,應用時應該注意每個else實際上是和其前面*接近的if配對使用的,通常中間各個else不能省略,但*后一個else可以省略,這時表示當所有的表達式值都為假時不作任何處理,接著執行選擇結構之外的命令語句。 else if結構執行是從上到下對所有條件表達式逐一進行判斷,只有遇到某個條件表達式值為真時,才會執行與之對應的語句,執行后即跳出整個選擇結構。如果沒有任何一個條件滿足,即所有表達式值均為假,則執行*后一個else命令后的語句,這個else通常作為默認條件使用。 例55編寫程序,判斷從鍵盤輸入字符的類屬范圍,輸出對應的分類屬性提示。例如,輸入字符6,輸出該字符為數字的提示。 算法分析: 字符類別是根據鍵盤輸入字符的ASCII碼值來區分的。在ASCII碼表中,若輸入的字符ASCII碼值小于32,通常為控制字符;若為字符0~9,則為數字;若為字符A~Z,則為大寫字母;若為字符a~z,為小寫字母;其余則歸入其他字符。該程序算法屬于多條件選擇分類處理問題,適于else if多條件分支結構實現,程序流程圖如圖59所示。 圖59判斷輸入字符的ASCII碼值,選擇輸出語句

高等學校計算機基礎教育教材精選C程序設計案例教程(第3版)/張莉 作者簡介

張莉,中國農業大學教授,碩士生導師;研究方向為信息系統建模、機器學習、教育認知模型、計算機教育、智慧教育環境等;教材建設教學成果主要有:獲國家精品在線開放課程1門、教育部“十一五”國家級規劃教材1套、北京市精品教材2部、北京市高等教育教學成果獎1項、校級教學成果獎5項、校級精品教材2部、農業部中華農業教育優秀教材1部、教育部寶鋼優秀教師稱號等;學術兼職主要有:CCF教育工作委員會委員、ACM SIGCSE China 委員、CCF教育專業委員會委員、全國高等院校計算機教育研究會常務理事、全國高等院校計算機基礎教育研究會理事、北京市高教學會計算機教育研究會常務理事等

商品評論(0條)
暫無評論……
書友推薦
本類暢銷
編輯推薦
返回頂部
中圖網
在線客服
主站蜘蛛池模板: 幂简集成 - 品种超全的API接口平台, 一站搜索、试用、集成国内外API接口 | 冷水机-冰水机-冷冻机-冷风机-本森智能装备(深圳)有限公司 | 石家庄律师_石家庄刑事辩护律师_石家庄取保候审-河北万垚律师事务所 | 品牌策划-品牌设计-济南之式传媒广告有限公司官网-提供品牌整合丨影视创意丨公关活动丨数字营销丨自媒体运营丨数字营销 | 罗茨真空机组,立式无油往复真空泵,2BV水环真空泵-力侨真空科技 | 工作服定制,工作服定做,工作服厂家-卡珀职业服装(苏州)有限公司 | 分光色差仪,测色仪,反透射灯箱,爱色丽分光光度仪,美能达色差仪维修_苏州欣美和仪器有限公司 | 光谱仪_积分球_分布光度计_灯具检测生产厂家_杭州松朗光电【官网】 | 恒温恒湿试验箱厂家-高低温试验箱维修价格_东莞环仪仪器_东莞环仪仪器 | 船用烟火信号弹-CCS防汛救生圈-船用救生抛绳器(海威救生设备) | 西安文都考研官网_西安考研辅导班_考研培训机构_西安在职考研培训 | 直流电能表-充电桩电能表-导轨式电能表-智能电能表-浙江科为电气有限公司 | 【德信自动化】点胶机_全自动点胶机_自动点胶机厂家_塑料热压机_自动螺丝机-深圳市德信自动化设备有限公司 | 网络推广公司_网络营销方案策划_企业网络推广外包平台-上海澜推网络 | 真空粉体取样阀,电动楔式闸阀,电动针型阀-耐苛尔(上海)自动化仪表有限公司 | 电磁铁_小型推拉电磁铁_电磁阀厂家-深圳市宗泰电机有限公司 | 气动球阀_衬氟蝶阀_调节阀_电动截止阀_上海沃托阀门有限公司 | 定做大型恒温循环水浴槽-工业用不锈钢恒温水箱-大容量低温恒温水槽-常州精达仪器 | 济南画室培训-美术高考培训-山东艺霖艺术培训画室 | 雨燕360体育免费直播_雨燕360免费NBA直播_NBA篮球高清直播无插件-雨燕360体育直播 | 气动机械手-搬运机械手-气动助力机械手-山东精瑞自动化设备有限公司 | 上海皓越真空设备有限公司官网-真空炉-真空热压烧结炉-sps放电等离子烧结炉 | 长沙印刷厂-包装印刷-画册印刷厂家-湖南省日大彩色印务有限公司 青州搬家公司电话_青州搬家公司哪家好「鸿喜」青州搬家 | 郑州爱婴幼师学校_专业幼师培训_托育师培训_幼儿教育培训学校 | 高效节能电机_伺服主轴电机_铜转子电机_交流感应伺服电机_图片_型号_江苏智马科技有限公司 | 钣金加工厂家-钣金加工-佛山钣金厂-月汇好 | 高精度电阻回路测试仪-回路直流电阻测试仪-武汉特高压电力科技有限公司 | 南京兰江泵业有限公司-水解酸化池潜水搅拌机-絮凝反应池搅拌机-好氧区潜水推进器 | 灰板纸、灰底白、硬纸板等纸品生产商-金泊纸业 | 定硫仪,量热仪,工业分析仪,马弗炉,煤炭化验设备厂家,煤质化验仪器,焦炭化验设备鹤壁大德煤质工业分析仪,氟氯测定仪 | 对辊破碎机-液压双辊式,强力双齿辊,四辊破碎机价格_巩义市金联机械设备生产厂家 | 国际船舶网 - 船厂、船舶、造船、船舶设备、航运及海洋工程等相关行业综合信息平台 | 建筑工程资质合作-工程资质加盟分公司-建筑资质加盟 | 东莞画册设计_logo/vi设计_品牌包装设计 - 华略品牌设计公司 | 橡胶粉碎机_橡胶磨粉机_轮胎粉碎机_轮胎磨粉机-河南鼎聚重工机械制造有限公司 | 机械立体车库租赁_立体停车设备出租_智能停车场厂家_春华起重 | 发电机价格|发电机组价格|柴油发电机价格|柴油发电机组价格网 | 吉祥新世纪铝塑板_生产铝塑板厂家_铝塑板生产厂家_临沂市兴达铝塑装饰材料有限公司 | NBA直播_NBA直播免费观看直播在线_NBA直播免费高清无插件在线观看-24直播网 | 储气罐,真空罐,缓冲罐,隔膜气压罐厂家批发价格,空压机储气罐规格型号-上海申容压力容器集团有限公司 | 广东健伦体育发展有限公司-体育工程配套及销售运动器材的体育用品服务商 |