freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

c語言程序設計(中)ppt(已修改)

2025-01-31 07:15 本頁面
 

【正文】 C語言程序設計 (中 ) 第 4章 數(shù)組和字符串 第 5章 函 數(shù) 第 6章 指針 第 4章 數(shù)組和字符串 數(shù)組能 簡化 算法、簡化編程。 數(shù)組的概念 數(shù)組是 同類型變量的集合 。數(shù)組具有如下特征: 1)類型 數(shù)組的類型就是所有數(shù)組元素的類型 2)數(shù)組名 各元素共用同一個名稱 3)維數(shù) 一維數(shù)組有一個下標,二維數(shù)組有兩個下標 第 0列 第 1列 第 2列 第 0行 第 1行 a[0][0] a[0][1] a[0][2] a[1][0] a[1][1] a[1][2] 數(shù)組的成員,用數(shù)組名加下標表示 a[0] a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9] 數(shù)組的定義和初始化 ① 維界只能是整常數(shù)表達式(含符號常數(shù)) ②數(shù)組的下標從 0開始 ③多個相同類型的數(shù)組可以在一個語句中定義 數(shù)據(jù)類型 數(shù)組名 維界 數(shù)組的定義 [存儲類型 ] 數(shù)據(jù)類型 數(shù)組名 [expn][expn1]? [exp2][exp1] int data[10]。 //一維數(shù)組 float a[3][4]。 //二維數(shù)組 char str1[30]。 //一維字符型數(shù)組 char str2[10][80]。 //二維字符型數(shù)組 數(shù)組的存儲結構 數(shù)組占用一片連續(xù)的存儲單元,數(shù)組中的各個元素依次存放。 數(shù)組名就是這一片存儲單元的首地址 。 一維數(shù)組 :各個元素順序存放 二維數(shù)組 :先按行的順序,然后按列的順序依次存放各個元素。 每個元素占用存儲單元的多少,取決于數(shù)組的數(shù)據(jù)類型,同一個數(shù)組的各個元素占用相同數(shù)量的存儲單元。 字符型數(shù)組 :各個字符依次存放,每個字符占 1字節(jié) a[0] a[1] a[2] a[3] a[4] a[5] a[6] a[7] b[0][0] b[0][1] b[0][2] b[1][0] b[1][1] b[1][2] c[0][0] c[0][1] …… c[0][6] c[1][0] c[1][1] …… c[1][6] 【 例 】 int a[8]。 float b[2][3]。 char c[2][7]。 數(shù)組的初始化 把初值順序放在等號右邊的花括號中,各常量之間用逗號隔開。 int ata[10]={50,60,70,80,90,100,101,102,103,104}。 float table[5]={1,5}。 把全部初值放在一對花括號中,每一行的初值又分別放在一對內(nèi)嵌的花括號中。 int a[4][3]={{1,2,3},{4,5,6},{7,8,9},{10,11,12}}。 其中代表每一行的內(nèi)層花括號也可以省略,直接寫成 int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12}。 1) 用字符常數(shù)初始化 char str[12]={39。T39。,39。h39。,39。e39。,’ 39。 39。,39。s39。,39。t39。,39。r39。,39。i39。,39。n39。,39。g39。,39。.39。,39。\039。}。 char language[5][8]={{39。B39。,39。A39。,39。S39。,39。I39。,39。C39。,39。\039。}, {39。F39。,39。O39。,39。R39。,39。T39。,39。R39。,39。A39。,39。N39。,39。\039。},{39。P39。,39。A39。,39。S39。,39。C39。,39。A39。,39。L39。,39。\039。}, {39。C39。,39。\039。},{39。C39。,O39。,39。B39。,39。O39。,39。L39。,39。\039。}}。 2) 直接用字符串常量初始化 char str[12]={The string.}。 或 char str[12]=The string.。 char Language[5][8]={BASIC,FORTRAN, PASCAL,C,COBOL}。 ①允許只對數(shù)組開頭的若干元素賦初值,此時尾部的元素將自動賦零值 。 int x[6]={1,2,3,4}。 相當于 int x[6]={1,2,3,4,0,0}。 int a[4][3]={{1,2},{4,5}}。 相當于 int a[4][3]={1,2,0,4,5,0,0,0,0,0,0,0}。 ② 不允許跳過數(shù)組開頭的元素而只給尾部元素賦初值。 float array[5]={,}。 //C99標準增加 ③當花括號中給出初值的個數(shù)多于定義的數(shù)組元素個數(shù)時,將出錯。 int a[4]={1,2,3,4,5}。 編譯時會顯示錯誤信息。 利用初始化定義隱含尺寸數(shù)組 ① C語言允許通過初始化方式隱含規(guī)定數(shù)組的大小。 int a[ ]={0,1,2,3,4,5,0}。 等價于 int a[7]={0,1,2,3,4,5,0}。 ② 用初始化方法隱含規(guī)定多維數(shù)組的大小時, 只能省略最左邊的維界表達式 。例如對二維數(shù)組,只能省略第一個方括號中的表達式,寫成: int a[ ][3]={{1,2,3},{4,5},{6},{7}}。 等價于 int a[4][3]={{1,2,3},{4,5},{6},{7}}。 不能寫成: int a[4][ ]={{1,2,3},{4,5},{6},{7}}。 或 int a[ ][ ]={{1,2,3},{4,5},{6},{7}}。 ③ 用初始化方法隱含規(guī)定字符型數(shù)組的大小,可以免除乏味的統(tǒng)計字符個數(shù)的工作。例如 char str[ ]={39。T39。,39。h39。,39。e39。, 39。 39。,39。s39。,39。t39。,39。r39。,39。i39。,39。n39。,39。g39。,39。.39。,39。\039。}。 char str[ ]=The string.。 編譯系統(tǒng)會根據(jù)初值給出的字符個數(shù)自動確定其維界是 12。 char language[ ][8]={BASIC,FORTRAN, PASCAL,C,COBOL}。 編譯系統(tǒng)會根據(jù)初始化中字符串常量的個數(shù)自動確定該數(shù)組的第二維維界是 5。 數(shù)組的基本操作 數(shù)組元素的引用 ( 1)一維數(shù)組的引用形式 數(shù)組名 [下標表達式 ] ( 2)二維數(shù)組的引用形式 數(shù)組名 [下標表達式 1][下標表達式 2] 數(shù)組的基本操作 數(shù)組的賦值 ①只能逐個對數(shù)組元素賦值,不能直接對數(shù)組名賦值 int i,a[5]。 a[0]=100,a[1]=120,a[2]=200,a[3]=250,a[4]=500。 ② 如果所賦的值有某種規(guī)律,就可以借助于循環(huán)來簡化程序的編制。 int b[2][3],i,j。 for (i=0。i2。i++) for (j=0。j3。j++) b[i][j]=i+j。 ③ 對字符型數(shù)組,只能對每個元素用字符常量賦值。 char st[4] 。 st[0]=39。A39。st[1]=39。B39。st[2]=39。C39。,st[3]=39。\039。 為了解決直接用字符串對字符型數(shù)組賦值的問題,可用字符串處理函數(shù)實現(xiàn)。 include strcpy(st,”ABC”)。 數(shù)組的輸入和輸出 一般用單重循環(huán)實現(xiàn)對各個元素逐個輸入和輸出 。 float x[10]。 int i。 for(i=0。i10。i++) scanf(%f,amp。x[i])。 for(i=0。i10。i++) printf(%f ,x[i])。 【 例 】 從鍵盤輸入 10個正整數(shù)存入數(shù)組 a中,按正反兩種順序輸出這 10個數(shù)。 include void main() { int a[10],i。 //定義一維數(shù)組 a for(i=0。i10。i++) scanf(%d,amp。a[i])。 //輸入數(shù)組元素 for(i=0。i10。i++) //正序輸出各元素的值 printf(%d ,a[i])。 printf(\n)。 for(i=9。i=0。i) //反序輸出各元素的值 printf(%d ,a[i])。 printf(\n)。 } 需要用二重循環(huán)實現(xiàn) (1)按行的順序輸入 int a[3][4],i,j。 for (i=0。i3。i++) for (j=0。j4。j++) scanf(%d,amp。a[i][j])。 (2)按列的順序輸入 int a[3][4],i,j。 for(i=0。i4。i++) for(j=0。j3。j++) scanf(“%d”,amp。a[j][i])。 (3)按矩陣形式輸出 include void main() { int i,j。 double b[3][4]= {,, ,}。 for (i=0。i3。i++) { for (j=0。j4。j++) printf(%,b[i][j])。 printf(\n)。 } } include void main() { int i,j,t,a[4][4]={35,73,65,50,33,47,66,28,42,19,25,60,30,72,54,26}。 printf(The original matrix is:\n)。 for (i=0。i4。i++) //輸出矩陣 { for (j=0。j4。j++) printf(%5d,a[i][j])。 printf(\n)。 } for (i=0。i4。i++) //矩陣轉(zhuǎn)置 for (j=0。ji。j++) { t=a[i][j]。 a[i][j]=a[j][i]。 a[j][i]=t。 } printf(The transfer matrix is:\n)。 for (i=0。i4。i++) //輸出轉(zhuǎn)置矩陣 { for (j=0。j4。j++) printf(%5d,a[i][j])。 printf(\n)。 } } 【 例 】 輸出下列矩陣的轉(zhuǎn)置矩陣。 26547230602519422866473350657335 (1) 用 scanf()和 printf()實現(xiàn) include void main() { int i。 char ch[10]。 for (i=0。i9。i++) scanf(%c,amp。ch[i])。 for(i=0。ch[i]!=’\0’。i++) printf(%c,ch[i])。 } include void main() { char ch[10]。 scanf(%s,ch)。 printf(%s,ch)。 } (2)用 gets()和 puts()實現(xiàn) gets(字符型數(shù)組名 )。 puts(字符型數(shù)組名 )。 include void main() { char word[80]。 printf(Input a statement:)。 gets(word)。 puts(wo
點擊復制文檔內(nèi)容
教學課件相關推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號-1