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

正文內(nèi)容

[工學(xué)]c程序設(shè)計(jì)第07章-資料下載頁(yè)

2025-10-07 18:19本頁(yè)面
  

【正文】 例 】 include main() { int k。 static char st[]=C language。 k=strlen(st)。 printf(The lenth of the string is %d\n,k)。 } 74 程序舉例 ? 把一個(gè)整數(shù)按大小順序插入已排好序的數(shù)組中 。 ? 為了把一個(gè)數(shù)按大小插入已排好序的數(shù)組中 ,應(yīng)首先確定排序是從大到小還是從小到大進(jìn)行的 。 設(shè)排序是從大到小進(jìn)序的 , 則可把欲插入的數(shù)與數(shù)組中各數(shù)逐個(gè)比較 , 當(dāng)找到第一個(gè)比插入數(shù)小的元素 i時(shí) , 該元素之前即為插入位置 。然后從數(shù)組最后一個(gè)元素開(kāi)始到該元素為止 ,逐個(gè)后移一個(gè)單元 。 最后把插入數(shù)賦予元素 i即可 。 如果被插入數(shù)比所有的元素值都小則插入最后位置 。 75 【 例 】 main(){ int i,j,p,q,s,n, a[11]={127,3,6,28,54,68,87,105,162,18}。 for(i=0。i10。i++){ p=i。q=a[i]。 for(j=i+1。j10。j++){ if(qa[j]) {p=j。q=a[j]。}} if(p!=i){s=a[i]。a[i]=a[p]。a[p]=s。} printf(%d ,a[i])。} printf(\ninput number:\n)。 scanf(%d,amp。n)。 for(i=0。i10。i++) if(na[i]){for(s=9。s=i。s) a[s+1]=a[s]。break。} a[i]=n。 for(i=0。i=10。i++) printf(%d ,a[i])。 printf(\n)。} 76 ? 本程序首先對(duì)數(shù)組 a中的 10個(gè)數(shù)從大到小排序并輸出排序結(jié)果 。 然后輸入要插入的整數(shù) n。再用一個(gè) for語(yǔ)句把 n和數(shù)組元素逐個(gè)比較 , 如果發(fā)現(xiàn)有 na[i]時(shí) , 則由一個(gè)內(nèi)循環(huán)把 i以下各元素值順次后移一個(gè)單元 。 后移應(yīng)從后向前進(jìn)行 (從 a[9]開(kāi)始到 a[i]為止 )。 后移結(jié)束跳出外循環(huán) 。 插入點(diǎn)為 i, 把 n賦予 a[i]即可 。 如所有的元素均大于被插入數(shù) , 則并未進(jìn)行過(guò)后移工作 。此時(shí) i=10, 結(jié)果是把 n賦于 a[10]。 最后一個(gè)循環(huán)輸出插入數(shù)后的數(shù)組各元素值 。 77 【 例 】 ?在二維數(shù)組 a中選出各行最大的元素組成一個(gè)一維數(shù)組 b。 a=(3 16 87 65 4 32 11 108 10 25 12 37) b=(87 108 37) ?本題的編程思路是 , 在數(shù)組 A的每一行中尋找最大的元素 , 找到之后把該值賦予數(shù)組 B相應(yīng)的元素即可 。 78 main(){ int a[][4]={3,16,87,65,4,32,11,108,10,25,12,37}。 int b[3],i,j,l。 for(i=0。i=2。i++) {l=a[i][0]。 for(j=1。j=3。j++) if(a[i][j]l) l=a[i][j]。b[i]=l。} printf(\narray a:\n)。 for(i=0。i=2。i++) { for(j=0。j=3。j++) printf(%5d,a[i][j])。printf(\n)。} printf(\narray b:\n)。 for(i=0。i=2。i++) printf(%5d,b[i])。 printf(\n)。} 79 ?程序中第一個(gè) for語(yǔ)句中又嵌套了一個(gè) for語(yǔ)句組成了雙重循環(huán) 。 外循環(huán)控制逐行處理 , 并把每行的第 0列元素賦予 l。 進(jìn)入內(nèi)循環(huán)后 , 把 l與后面各列元素比較 , 并把比 l大者賦予 l。 內(nèi)循環(huán)結(jié)束時(shí) l 即為該行最大的元素 , 然后把 l值賦予 b[i]。 等外循環(huán)全部完成時(shí) , 數(shù)組 b中已裝入了 a各行中的最大值 。 后面的兩個(gè) for語(yǔ)句分別輸出數(shù)組 a和數(shù)組 b。 80 【 例 】 輸入五個(gè)國(guó)家的名稱按字母順序排列輸出。 ?本題編程思路如下:五個(gè)國(guó)家名應(yīng)由一個(gè)二維字符數(shù)組來(lái)處理 。 然而C語(yǔ)言規(guī)定可以把一個(gè)二維數(shù)組當(dāng)成多個(gè)一維數(shù)組處理 。 因此本題又可以按五個(gè)一維數(shù)組處理 , 而每一個(gè)一維數(shù)組就是一個(gè)國(guó)家名字符串 。 用字符串比較函數(shù)比較各一維數(shù)組的大小 , 并排序 , 輸出結(jié)果即可 。 81 main(){ char st[20],cs[5][20]。int i,j,p。 printf(input country39。s name:\n)。 for(i=0。i5。i++) gets(cs[i])。 printf(\n)。 for(i=0。i5。i++) { p=i。strcpy(st,cs[i])。 for(j=i+1。j5。j++) if(strcmp(cs[j],st)0) {p=j。strcpy(st,cs[j])。} if(p!=i){strcpy(st,cs[i])。strcpy(cs[i],cs[p])。 strcpy(cs[p],st)。} puts(cs[i])。}printf(\n)。} 82 ? 本程序的第一個(gè) for語(yǔ)句中 ,用 gets函數(shù)輸入五個(gè)國(guó)家名字符串 。 上面說(shuō)過(guò)C語(yǔ)言允許把一個(gè)二維數(shù)組按多個(gè)一維數(shù)組處理 ,本程序說(shuō)明 cs[5][20]為二維字符數(shù)組 ,可分為五個(gè)一維數(shù)組 cs[0],cs[1],cs[2],cs[3],cs[4]。因此在 gets函數(shù)中使用 cs[i]是合法的 。 在第二個(gè) for語(yǔ)句中又嵌套了一個(gè) for語(yǔ)句組成雙重循環(huán) 。 這個(gè)雙重循環(huán)完成按字母順序排序的工作 。 在外層循環(huán)中把字符數(shù)組 cs[i]中的國(guó)名字符串拷貝到數(shù)組 st中 ,并把下標(biāo) i賦予 P。 進(jìn)入內(nèi)層循環(huán)后 ,把 st與 cs[i]以后的各字符串作比較 ,若有比 st小者則把該字符串拷貝到 st中 ,并把其下標(biāo)賦予 p。 內(nèi)循環(huán)完成后如 p不等于 i說(shuō)明有比 cs[i]更小的字符串出現(xiàn) ,因此交換 cs[i]和 st的內(nèi)容 。 至此已確定了數(shù)組 cs的第 i號(hào)元素的排序值 。 然后輸出該字符串 。 在外循環(huán)全部完成之后即完成全部排序和輸出 。 83 本章小結(jié) ? 。數(shù)組可分為數(shù)值數(shù)組 (整數(shù)組 , 實(shí)數(shù)組 ),字符數(shù)組以及后面將要介紹的指針數(shù)組 ,結(jié)構(gòu)數(shù)組等 。 84 ? , 二維的或多維的 。 85 ? 、 數(shù)組名 、數(shù)組長(zhǎng)度 (數(shù)組元素個(gè)數(shù) )三部分組成 。 數(shù)組元素又稱為下標(biāo)變量 。 數(shù)組的類型是指下標(biāo)變量取值的類型 。 86 ? ,輸入函數(shù)動(dòng)態(tài)賦值和賦值語(yǔ)句賦值三種方法實(shí)現(xiàn) 。 對(duì)數(shù)值數(shù)組不能用賦值語(yǔ)句整體賦值 、 輸入或輸出 , 而必須用循環(huán)語(yǔ)句逐個(gè)對(duì)數(shù)組元素進(jìn)行操作 。
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1