




下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、授課題目第四章數組(2)二維數組學習必備歡迎下載C語言程序設計課程教案表課時安排授課時間2教學目的和要求1掌握:二維數組的定義與使用方法。教學內容1基本內容:(1)二維數組的定義和使用方法2重點:二維數組的引用講課進程和時間分配1、引入(5分鐘)在C語言中,數組的元素還可以是數組,這樣就構成二維數組,所以二維數組可以堪稱是“數組的數組”。照此辦理,還可以構成三維,四維數組(稱多維數組)等等,二維數組是多維數組中最簡單,最常用的數組,它代表多維數組的基本特征。2、二維數組的定義(10分鐘)如前面所說,可以把二維數組看作是一種特殊的一維數組:它的元素又是一個一維數組如:inta34;可以將a數組看
2、作是一個一維數組,它有3個元素:a0、a1、a2,每個元素又是一個包含4個元素的一維數組。圖在紙上:可以理解為:inta04,a14,a24,此處把a0,a1,a2看作一維數組名。說明:在這里為什么這么說呢?以后講到指針的時候更便于理解二維數組的存儲:二維數組從概念上可理解為行-列矩陣,但存儲器是一維的,需按一定規則轉換,在內存中:C語言中,二維數組中元素排列的順序是按行存放,不同的語言它的排列順序是不一樣的,Fotran是按列存放的。如:見紙上也就是說:數組元素的實際存放順序是:右邊下標比左邊下標變化得快!3、二維數組的引用(5分鐘)注意下標的最大取值,即:要注意數組定義和數組元素引用的區別
3、,引用時候它的最大取值要比定義時少1如定義:inta34;則下標下限值是a00,下標上限值是a23,4、二維數組的初始化(按行存放)(15分鐘)(1)按存放順序賦初值如:intx23=1,2,3,4,5,6;結果為:x00=1,x01=2,x02=3,x10=4,x11=5,x12=6(2)按行賦初值如:intx23=1,2,3,4,5,6;結果同上。(3)部分賦初值如:staticintx23=1,2,4;/*以存放順序賦*/結果為:x00=1,x01=2,x02=4,x10=0,x11=0,x12=0如:staticintx23=1,2,4;/*以行賦*/結果為:x00=1,x01=2,x
4、02=0,x10=4,x11=0,x12=0如:staticintx23=6,2,5,0,6;/*以行賦*/x00=6,x01=2,x02=0,x10=5,x11=0,x12=6說明:想給第二行第三個元素賦值為0的話不能寫成5,6或者是5,6而應人為寫上0.(4)省略第一維長度staticintx3=1,2,3,4,5,6,7;學習必備歡迎下載結果為:x00=1,x01=2,x02=3,x10=4,x11=5,x12=6,x20=7,x21=0,x22=0注意:不能省略第二維的長度。為什么?如果省略的話,就不知道一行有幾個元素,給定這幾個元素究竟應該如何賦值就不知道了,所以能省第一維,不能省第
5、二維,因為省的話系統不能確定,這樣就產生二義性了。5、二維數組程序舉例(20分鐘)例1:二維數組的輸入與輸出一般二維數組的處理用二重循環來實現用循環變量的值控制數組元素的下標,因為數組是一個整體,要想取出其中每一個個體的話,就得用下標來控制。#includevoidmain()inta33,I,j;for(i=0;i=2;i+)for(j=0;j=2;j+)scanf(“%d”,&aij);for(i=0;j=2;i+)for(j=0;j=2;j+)printf(“%5d”,aij);printf(“n”);上述程序為學生詳細分析一下。for(i=0;i=2;i+)for(j=0;j=2;j+
6、)scanf(“%d”,&aji);分析輸出結果與上述有何不同,未修改時先給每行賦值,修改后是先給每列賦值for(i=0;j=2;i+)for(j=0;j=2;j+)if(i+j)%2)修改為if(i+j)%2=0)printf(“%5d”,aij);for(i=0;i=字符個數+1(字符串后面自動加上一個0)例字符數組初始化#includevoidmain()chara7=a,p,p,l,e;charb7=”apple”;charc7;staticcharx7;inti;for(i=0;i=6;i+)printf(“%6d%6d%6d%6dn”,ai,bi,ci,xi);顯示結果:9797-
7、230112112750108108800101101-2000510001230學習必備歡迎下載c數組的各個元素的值是隨機的。X數組用static說明,系統給它賦初值0.例用一個字符串給字符數組賦初值,然后打印出各元素的ASCII編碼值#includevoidmain()charstr=”Thisisastring!”;inti=0;while(stri!=0)printf(“%c=%dn”,stri,stri);i+printf(“%c=%dn”,stri,stri);輸出結果:T=84H=104I=105S=115=32注意幾個問題:用字符串給字符數組賦初值,系統自動加上空字符0(終結符
8、)空格字符的AscII編碼為320空字符ASCII編碼為0兩者均無法直接打印出來。3)字符串的引用與輸入輸出對于字符數組,在程序中既可以逐個引用字符串中的單個字符(數組元素)也可以一次引用整個字符串(數組),這點在數值數組中是不可以的!1、逐個字符數組元素輸入輸出:用%c格式符描述。例:scanf(“%c”,&ai);printf(“%c%c%c”,a0,a2,a3);2、整個字符串(數組)輸入輸出,用%s格式符描述如:chara=”china”scanf(“%s”,a);printf(“%s”,a);a前沒地址符,因為數組名就代表數組的起始地址注意1:用%s輸出,無論數組元素有多少個只要遇到“0”便結束。如:charstar34=”*”,“*”,“*”;printf(“%sn%sn%sn”,star0,star1,star2);說明:star0代表第一行首地址。結果為:*注意2:%s要求的是地址,對一維數組,數組名就是地址;對二維數組,只寫行下標時是地址。如chara6;scanf(“%s”,a);輸入數據:china如:charstr15,str25,str35輸入數據:howareyou?用%s輸入串時遇到空格或回車就默認前一個字符串輸入結束。也可以定義一個二維數組voidmain()學習必備歡迎下載chars35;scan
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中國幼兒教育試題及答案
- 村辦產業面試題目及答案
- 愛情著名測試題及答案
- 單位應聘筆試試題及答案
- 產品測量考試題庫及答案
- 分析紡織行業中的技術變革對考試的作用試題及答案
- 安徽中專考試題庫及答案
- 2024廣告設計師創意策劃試題及答案
- 2024年美術設計師考試內容要點總結試題及答案
- 2024年紡織品檢驗員考試技能要求試題及答案
- 藥事管理與法規智慧樹知到答案2024年石河子衛生學校
- 人工智能訓練師理論知識考核要素細目表五級
- 2024年貴州省中考理科綜合試卷(含答案)
- 110kV變電站專項電氣試驗及調試方案
- DL-T901-2017火力發電廠煙囪(煙道)防腐蝕材料
- 籃球智慧樹知到期末考試答案章節答案2024年浙江大學
- GB/T 3428-2024架空導線用鍍鋅鋼線
- ISO 15609-1 金屬材料焊接工藝規程及評定-焊接工藝規范中文版
- MOOC 英語語法與寫作-暨南大學 中國大學慕課答案
- 2024年山東省濟南市歷下區中考二模地理試題
- 電子書 -《商業的底層邏輯》
評論
0/150
提交評論