C語言第六章數(shù)組學習教案_第1頁
C語言第六章數(shù)組學習教案_第2頁
C語言第六章數(shù)組學習教案_第3頁
C語言第六章數(shù)組學習教案_第4頁
C語言第六章數(shù)組學習教案_第5頁
已閱讀5頁,還剩47頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、會計學1C語言第六章數(shù)組語言第六章數(shù)組第一頁,共52頁。在C語言中表示數(shù)組和矩陣的方法是:數(shù)組:a0、a1、a2、a3、a4、a5其中 a :稱為數(shù)組名。 方括號中的數(shù):稱為下標 下標是一個數(shù)時,也就是(jish)數(shù)列,稱為一維數(shù)組。 下標是兩個數(shù)時,也就是(jish)矩陣,稱為二維數(shù)組。還有三維、四維數(shù)組等 第1頁/共52頁第二頁,共52頁。例如:有五名學生的一組學號:2004035012、2004035013、2004035014、2004035015、2004035016。 如果用數(shù)組來表示的話可以用統(tǒng)一的數(shù)組名比如:num,用下標區(qū)別每個變量(binling)。 即 num0、num1

2、、num2、num3、um4表示一個學號數(shù)組。第2頁/共52頁第三頁,共52頁。一維數(shù)組在內(nèi)存的存儲一維數(shù)組在內(nèi)存的存儲(cn ch)(cn ch)形式:形式: num num 就是數(shù)組存儲就是數(shù)組存儲(cn ch)(cn ch)區(qū)域的首地址,即區(qū)域的首地址,即 num=200 num=200 。num 200num0num1num2num3num4204208212216200403501220040350132004035014200403501520040350166.1 6.1 一維數(shù)組的定義一維數(shù)組的定義(dngy)(dngy)和引和引用用第3頁/共52頁第四頁,共52頁。 2、一維

3、數(shù)組的引用、一維數(shù)組的引用數(shù)組必須先定義,后使用數(shù)組必須先定義,后使用只能只能(zh nn)逐個引用數(shù)組元素逐個引用數(shù)組元素,不能一次引用整不能一次引用整個數(shù)組個數(shù)組數(shù)組元素表示形式:數(shù)組元素表示形式: 數(shù)組名數(shù)組名下標下標其中:下標可以是常量、變量或表達式。其中:下標可以是常量、變量或表達式。例例 int a10; scanf(“%d”,a) ; 必須必須(bx) int a10; for(j=0;j10;j+) scanf(“%d”, &aj);例如例如(lr): int k=5 ; a1、a1+5 、ak、a10-k( )( )第4頁/共52頁第五頁,共52頁。3、一維數(shù)組元素值的輸入、

4、一維數(shù)組元素值的輸入(shr)與輸出與輸出例如例如 : main() int i , a10; for(i=0 ; i10 ; i+) scanf(“%d” , & ai ) ; for(i=0 ; i10 ; i+) printf (“%d ”, ai ) ; 例例6.1 #include void main( ) int i ,a10 ; for ( i = 0 ;i = 0 ;i - - ) printf ( “%2d”,a i ) ; printf ( “n”); 結(jié)果:結(jié)果:9876543210 _第5頁/共52頁第六頁,共52頁。使用數(shù)組定義和數(shù)組元素時的幾點注意: 1、把數(shù)組定義

5、時方括號中的數(shù)和元素下標值區(qū)別開,數(shù)組定義時方括號中的數(shù)表示數(shù)組含有的元素個數(shù) 元素下標值是標識具體的數(shù)組元素的。方括號中的數(shù)不能是變量,只能是常量。2、數(shù)組元素的下標可以是常量, 也可以是變量,其值必須是非負數(shù), 如果是小數(shù),系統(tǒng)(xtng)自動取整。3、數(shù)組必須先定義后使用。4、系統(tǒng)(xtng)不檢查數(shù)組元素下標的越界問題。5、一維數(shù)組元素的輸入、輸出使用單層循環(huán)語句。第6頁/共52頁第七頁,共52頁。4、一維數(shù)組的初始化在定義數(shù)組時,為數(shù)組元素賦初值(在編譯(biny)階段使之得到初值)v說明(shumng):v數(shù)組不初始化,其元素值為隨機數(shù)l當全部(qunb)數(shù)組元素賦初值時,可不指定

6、數(shù)組長度如 int a5=6,2,3; 等價于: a0=6; a1=2;a2=3; a3=0; a4=0;如 int a3=6,2,3,5,1; ()l只給部分數(shù)組元素賦初值 int a=1,2,3,4,5,6;編譯系統(tǒng)根據(jù)初值個數(shù)確定數(shù)組維數(shù)值int a5=1,2,3,4,5;等價于:a0=1; a1=2; a2=3; a3=4; a4=5;初始化方式第7頁/共52頁第八頁,共52頁。例6.2 用數(shù)組求Fibonacci數(shù)列(shli)前20個數(shù))3()2(12) 1(1121nFFFnFnFnnn#include main() int i; int f20=1,1; for(i=2;i20

7、;i+) fi=fi-2+fi-1; for(i=0;ia2,則交換(jiohun)值;然后比較第二個數(shù)與第三個數(shù),若為逆序a2a3,則交換(jiohun)值;依次類推,直至第7個數(shù)和第8個數(shù)比較為止第一趟冒泡排序,結(jié)果最大的數(shù)被安置在最后一個元素位置上,即在a8中。(2)對前7個數(shù)進行第二趟冒泡排序,結(jié)果使次大的數(shù)被安置在第7個元素位置,即在a7中 。(3)重復(fù)上述過程,共經(jīng)過7趟冒泡排序后,排序結(jié)束。第9頁/共52頁第十頁,共52頁。例例38 49 65 76 13 27 30 97第一趟第一趟38 49 65 13 27 30 76第二趟第二趟38 49 13 27 30 65第三趟第三

8、趟38 13 27 30 49第四趟第四趟13 27 30 38第五趟第五趟13 27 30第六趟第六趟49 38 65 97 76 13 27 30初始關(guān)鍵字初始關(guān)鍵字n=83849769713972797309713767676273013652765306513134949304927382738303813 27第七趟第七趟第10頁/共52頁第十一頁,共52頁。輸入n 個數(shù)給a1 到 anfor j=1 to n-1for i=1 to n-jaiai+1真假aiai+1輸出a1 到 an#include main() int a9,i,j,t; printf(Input 8 numb

9、ers:n); for(i=1;i9;i+) scanf(%d,&ai); printf(n); for(j=1;j=7;j+) for(i=1;iai+1) t=ai; ai=ai+1; ai+1=t; printf(The sorted numbers:n); for(i=1;i9;i+)printf(%d ,ai);第11頁/共52頁第十二頁,共52頁。6.2 二維數(shù)組及多維數(shù)組二維數(shù)組及多維數(shù)組 一維數(shù)組通常是用來處理數(shù)列一維數(shù)組通常是用來處理數(shù)列(shli)問題的問題的例如:例如: a1 、 a2 、 a3 、.、 an、 . 可以用一維來表示。可以用一維來表示。二維數(shù)組通常是用來矩

10、陣問題的二維數(shù)組通常是用來矩陣問題的,例如下面的數(shù)表(矩陣):,例如下面的數(shù)表(矩陣): a11a12a13a14a21a22a23a24a31a32a33a3434可以(ky)用二維數(shù)組來表示。第12頁/共52頁第十三頁,共52頁。1、二維數(shù)組的定義定義方式(fngsh):數(shù)據(jù)類型數(shù)組名常量表達式常量表達式;v數(shù)組元素(yun s)的存放順序v在內(nèi)存中按行順序存放。v即先存第一行,接著存第二行,v以此類推。例如:例 int a34; float b25; int a3,4; ()行數(shù)列數(shù)元素(yun s)個數(shù)=行數(shù)*列數(shù)int a32a01a10a11a20a21014523a00a00 a

11、01a10 a11a20 a2101234567.20212223int c234c000c001c002c003c010c011c012c013c020c021c022c023c100c101c102c103c110c111c112c113c120c121c122c123第13頁/共52頁第十四頁,共52頁。2、二維數(shù)組理解(lji)由按上述定義(dngy)的二維數(shù)組的方式 (比如:int a34 ),我們可以把二維數(shù)組看成是一種特殊的一維數(shù)組:它的元素又是一維數(shù)組。例如,把 a看成是一維數(shù)組,它有3個元素,分別是:a0、a1、a2,每個元素又是一個包含4個元素的一維數(shù)組。如下表: a0 a

12、00 、 a01 、 a02 、 a03a a1 a10 、 a11 、 a12 、 a13 a2 a20 、 a21、 a22 、 a23其中(qzhng) a 是數(shù)組 a0、a1、a2 的數(shù)組名而 a0 是數(shù)組 a00、a01 、a02 、 a03 的數(shù)組名 a1是數(shù)組 a10、a11 、a12、a13的數(shù)組名 a2是數(shù)組 a20、a21、 a22 、a23的數(shù)組名第14頁/共52頁第十五頁,共52頁。3、二維數(shù)組元素的引用、二維數(shù)組元素的引用形式形式(xngsh): 數(shù)組名數(shù)組名下標下標下標下標4、二維數(shù)組的輸入輸出。、二維數(shù)組的輸入輸出。 使用雙層循環(huán)。例如:使用雙層循環(huán)。例如:mai

13、n() int a45 , i , j ; for (i=1 ;i=3;i+) for(j=1;j=4;j+) scanf(“%d”,&aij); for (i=1 ;i=3;i+) for(j=1;j=4;j+) printf(“%d”, aij);輸入,數(shù)據(jù)(shj)用空格或回車隔開輸出(shch)第15頁/共52頁第十六頁,共52頁。5、二維數(shù)組元素(yun s)的初始化分行初始化:l按元素(yun s)排列順序初始化 例例 int a23=1,2,3,4,5,6;a00a01a02a10a11a12123456全部初始化全部初始化= 例例 int a23=1,2,4;a00a01a02

14、a10a11a12120400部分初始化部分初始化= 例 int a 3=1 ,4,5;a00a01a02a10a11a12100450第一維長度省略初始化第一維長度省略初始化= 例 int a 23=1,2,3,4,5,6;a00a01a02a10a11a12123456全部初始化= 例例 int a 23=1,2,4,;a00a01a02a10a11a12124000部分初始化部分初始化= 例例 int a 3=1,2,3,4,5;a00a01a02a10a11a12123450第一維長度省略初始化第一維長度省略初始化=第16頁/共52頁第十七頁,共52頁。l程序(chngx)舉例例例 將

15、二維數(shù)組行列元素將二維數(shù)組行列元素(yun s)互換,存到另一個數(shù)組中互換,存到另一個數(shù)組中a=1 2 34 5 6b=1 42 53 6#include main() int a23=1,2,3,4,5,6; int b32,i,j; printf(array a:n); for(i=0;i=1;i+) for(j=0;j=2;j+) printf(%5d,aij); bji=aij;printf(n); printf(array b:n); for(i=0;i=2;i+) for(j=0;jmax真假max=aijrow=icolum=j輸出:max和row,colum#include m

16、ain() int a34=1,2,3,4, 9,8,7,6, -10,10,-5,2; int i,j,row=0,colum=0,max; max=a00; for(i=0;i=2;i+) for(j=0;jmax) max=aij; row=i; colum=j; printf(max=%d,row=%d, colum=%dn,max,row,colum);第18頁/共52頁第十九頁,共52頁。 5.3的主要(zhyo)內(nèi)容:1、字符數(shù)組的定義2、字符數(shù)組的初始化3、字符數(shù)組與字符串常量之間的關(guān)系4、字符數(shù)組(字符串常量)的輸入輸出5、字符串處理函數(shù) 第19頁/共52頁第二十頁,共52頁

17、。6.3 字符數(shù)組和字符串 (存放字符數(shù)據(jù),一個元素存放一個字符 )一、定義 : 字符數(shù)組的定義方法與前面(qin mian)講過的類似 char c 10 ; int c 10 ;二、字符(z f)數(shù)組的初始化例 char c10, ch34; 例例 char ch5=H,e,l,l,o;ch0Hello逐個字符賦值逐個字符賦值ch1ch2ch3ch41、逐個字符賦值、逐個字符賦值在內(nèi)存中情況示意在內(nèi)存中情況示意字符是以字符是以ascll碼存的碼存的第20頁/共52頁第二十一頁,共52頁。 例 char ch5=B,o,y;ch0Boy00逐個字符賦值逐個字符賦值ch1ch2ch3ch41、

18、逐個、逐個(zhg)字符賦值字符賦值int a5=1,2,3;結(jié)果:結(jié)果:a0=1 ,a1=2, a2=3 ,a3=0, a4=0對照對照第21頁/共52頁第二十二頁,共52頁。 例例 char ch =a,b,c,d;ch0abcd逐個字符賦值逐個字符賦值ch1ch2ch31、逐個、逐個(zhg)字符賦值字符賦值int a =1,2,3,4;結(jié)果:結(jié)果:a0=1 ,a1=2, a2=3 ,a3=4對照對照說明:1初值個數(shù) 數(shù)組長度(chngd)語法錯誤;2初值個數(shù) 數(shù)組長度(chngd)其余元素為 0;3初值個數(shù) = 數(shù)組長度(chngd)長度(chngd)可?。?如:char a = B,

19、O,Y ;4可定義并初始化多維數(shù)組。如:char a23 = b,o,y,d,o,g 第22頁/共52頁第二十三頁,共52頁。第23頁/共52頁第二十四頁,共52頁。2、用字符串常量、用字符串常量(chngling)字符串:1.在C中,用字符數(shù)組存字符串。2.字符串結(jié)束標志0 0 表示字符串到此結(jié)束,有0前面的字符組成字符串。 字符串常量 系統(tǒng)自動加一個0。 例:“China”,共5個字符占6個字節(jié),即用無名一維數(shù)組存放。3.定義數(shù)組長度應(yīng)大于最大字符串長度0前有效字符。4.0ASCII碼為0的字符,非顯示字符空操作字符。 如:printf(“How do you do?n”); 系統(tǒng)自動加一

20、個0,作檢查(jinch)用,看輸出完否。5.可用字符串常量對字符數(shù)組初始化 C h i n a 0 char c = “China” ;或 char c = “China” ; C h i n a 0 0 0 0 0而 char c 10 = “China” ; 6.字符數(shù)組存字符串, 0可加可不加。加上方便且與系統(tǒng)一致 人為加0,如: char c = C,h,i,n,a,0 ; 例例 char ch6=“Hello”; char ch6=“Hello”; char ch=“Hello”;用字符串常量用字符串常量ch0Helloch1ch2ch3ch40ch5系統(tǒng)自動加的系統(tǒng)自動加的字符串

21、結(jié)束字符串結(jié)束標記標記”0”第24頁/共52頁第二十五頁,共52頁。 例例 char ch5=“Boy”;ch0Boy00用字符串常量用字符串常量ch1ch2ch3ch42、用字符串常量、用字符串常量(chngling)第25頁/共52頁第二十六頁,共52頁。char ch6=“Hello”; char ch6=“Hello”; char ch= h,e,l,l,o,0;char ch=“Hello”;數(shù)組中有數(shù)組中有6個元素。個元素。char ch=h,e,l,l,o;數(shù)組中有數(shù)組中有5個元素。個元素。最后最后(zuhu)一個元素是一個元素是o而不是而不是0。ch0Helloch1ch2ch

22、3ch40ch5示意圖第26頁/共52頁第二十七頁,共52頁。 例 char f7=A,p,p,l,e, O,r,a,n,g,e, G,r,a,p,e;也可以(ky)這樣:char fruit7=“Apple”, “Orange”, “Grape”;二維字符二維字符(z f)數(shù)組初始化數(shù)組初始化f0f1f2Apple00Orange0Grape00第27頁/共52頁第二十八頁,共52頁。 三、字符串以及結(jié)束標記1、字符串及其結(jié)束標志(biozh)字符串:雙引號擴起來的一串字符。結(jié)束標志(biozh): 0 。2、無字符串變量,用字符數(shù)組處理字符串 例例 “hello”共共5個字符,在內(nèi)存占個字

23、符,在內(nèi)存占6個字節(jié)個字節(jié) 字符串長度字符串長度5 h e l l o 0104 101 108 108 111 0內(nèi)存存放字符ASCII碼第28頁/共52頁第二十九頁,共52頁。四、一維字符四、一維字符(z f)數(shù)組(字符數(shù)組(字符(z f)串串)的輸入輸出的輸入輸出 使用函數(shù)使用函數(shù) scanf 與與 printf 1、整個字符、整個字符(z f)串的輸入與輸出串的輸入與輸出 : 格式符為:格式符為: %s例 用%s main() char str5; scanf(“%s”, str); printf(“%s”, str);運行(ynxng)結(jié)果: 輸入:China 輸出:China 用字

24、符數(shù)組名用字符數(shù)組名, 不要加不要加&輸入串長度輸入串長度遇空格或回車遇空格或回車(hu ch)結(jié)束結(jié)束 自動加自動加0第29頁/共52頁第三十頁,共52頁。2、逐個字符輸入與輸出(shch): 格式符 為: %c例 用%c main() char str5; int i; for(i=0;i5;i+) scanf(“%c”, &stri); for(i=0;i5;i+) printf(“%c”, stri);運行結(jié)果(ji gu):輸入:abcde輸出:abcde第30頁/共52頁第三十一頁,共52頁。例 main( ) char a5=H,e,l,l,o; printf(“%s”,a);

25、例 main( ) char a =“Hello”; printf(“%s”,a); 結(jié)果(ji gu):Hello#-=* H e l l o02314結(jié)果(ji gu):Hello用“%s”輸出(shch)時,遇0結(jié)束第31頁/共52頁第三十二頁,共52頁。例 字符串輸入(shr)舉例 H o w 0 a r e 0 y o u ? 0 #include main() char a15,b5,c5; scanf(%s%s%s,a,b,c); printf(a=%snb=%snc=%sn,a,b,c); scanf(%s,a); printf(a=%sn,a);運行情況(qngkung):輸

26、入:How are you?輸出:a=How b=are c=you?輸入:How are you?輸出:a=Howscanf中%s輸入時,遇空格(kn )或回車結(jié)束第32頁/共52頁第三十三頁,共52頁。六、常用六、常用(chn yn)的字符串處理函數(shù)的字符串處理函數(shù) 包含在頭文件包含在頭文件 string.h1、字符(z f)串輸出函數(shù) puts格式:puts(字符(z f)數(shù)組名)功能:向顯示器輸出字符(z f)串(輸出完,換行)說明:字符(z f)數(shù)組必須以0結(jié)束例例 #include main( ) char str10=“How are you?”; puts(str); /* p

27、rintf(“%s”,str) ; */ 運行結(jié)果運行結(jié)果(ji gu): 輸出輸出: How are you ? 第33頁/共52頁第三十四頁,共52頁。2、字符串輸入函數(shù)、字符串輸入函數(shù) gets格式:格式:gets(字符數(shù)組名字符數(shù)組名)功能:從鍵盤輸入一以回車功能:從鍵盤輸入一以回車(hu ch)結(jié)束的字符串結(jié)束的字符串放入字符數(shù)組中,并自動加放入字符數(shù)組中,并自動加0說明:輸入串長度應(yīng)小于字符數(shù)組長度說明:輸入串長度應(yīng)小于字符數(shù)組長度例例 #include main( ) char str30; gets(str); /* scanf(“%s”,str); */ puts(str);

28、 輸入輸入(shr): How are you?輸出輸出: How are you ? 第34頁/共52頁第三十五頁,共52頁。3、字符串連接函數(shù)、字符串連接函數(shù)(hnsh) strcat格式:格式:strcat(字符數(shù)組字符數(shù)組1,字符數(shù)組字符數(shù)組2)功能:把功能:把 字符數(shù)組字符數(shù)組2 連到連到 字符數(shù)組字符數(shù)組1 后面后面 說明:說明:字符數(shù)組字符數(shù)組1必須足夠大必須足夠大 連接前連接前,兩串均以兩串均以0結(jié)束結(jié)束;連接后連接后,串串1的的0取消取消, 新串最后加新串最后加0例例 #include main() char a20 = Turbo; char b= “ C+, strcat

29、(a , c); printf(%sn, a); 輸出輸出(shch)結(jié)果:結(jié)果:Turbo C+第35頁/共52頁第三十六頁,共52頁。例 char str120,str220; str1=“Hello!”; () str2=str1; ()4、字符串拷貝函數(shù)、字符串拷貝函數(shù)strcpy格式:格式:strcpy(字符數(shù)組字符數(shù)組1,字符串字符串2)功能:將字符串功能:將字符串2,拷貝到字符數(shù)組,拷貝到字符數(shù)組1中去中去說明:說明:字符數(shù)組字符數(shù)組1必須必須(bx)足夠大足夠大 拷貝時拷貝時0一同拷貝一同拷貝 不能使用賦值語句為一個字符數(shù)組賦值不能使用賦值語句為一個字符數(shù)組賦值例: #incl

30、ude main() char a25; char b= “ C+, c = Turbo; strcpy(a , c); strcat(a , b); printf(%sn, a); 輸出(shch)結(jié)果: Turbo C+ 第36頁/共52頁第三十七頁,共52頁。5、字符串比較函數(shù)、字符串比較函數(shù) strcmp格式:格式:strcmp(字符串字符串1,字符串字符串2)功能功能(gngnng):比較兩個字符串:比較兩個字符串比較規(guī)則:對兩串從左向右逐個字符比較(比較規(guī)則:對兩串從左向右逐個字符比較(ASCII碼)碼) 直到遇到不同字符或直到遇到不同字符或0為止為止返值:返回返值:返回int型整

31、數(shù),型整數(shù), a. 若字符串若字符串1 字符串字符串2, 返回正整數(shù)返回正整數(shù) c. 若字符串若字符串1= 字符串字符串2, 返回零返回零說明:字符串比較不能用說明:字符串比較不能用“= =”,必須用必須用 strcmp例如例如(lr):比較:比較: Hello! 與與 Hell0! H e l l o ! H e l I 0 ! 第37頁/共52頁第三十八頁,共52頁。例 #include #include main() char str1 = “Hell0!”, str2 =“Hello!”; if(strcmp(str1, str2)0) printf( “Hell0! Hello!”)

32、; else if(strcmp(str1, str2)=0) printf(“Hell0!= = Hello!”) ; else printf(“Hell0! Hello!”); 輸出輸出(shch)結(jié)結(jié)果:果:Hell0!Hello!第38頁/共52頁第三十九頁,共52頁。6、字符串長度函數(shù)、字符串長度函數(shù) strlen 作業(yè):作業(yè):141頁頁格式:格式:strlen(字符數(shù)組字符數(shù)組) 7.11 、7.14、7.15功能:計算字符串長度功能:計算字符串長度返值:返回字符串實際返值:返回字符串實際(shj)長度,不包括長度,不包括0在內(nèi)在內(nèi)例:例:#include main()char s

33、tr1 = ”Hello!, str2 = ”How are you?”; int len1,len2 , len3; len1=strlen(str1) ; len2=strlen(str2); printf(“l(fā)en1=%d len2=%d”,len1,len2); 結(jié)果結(jié)果(ji gu):len1=6 len2=12第39頁/共52頁第四十頁,共52頁。應(yīng)用應(yīng)用(yngyng)舉例舉例例例 1、 輸入一行字符輸入一行字符(z f),統(tǒng)計其中有多少個單詞,單詞之間用空格間隔,統(tǒng)計其中有多少個單詞,單詞之間用空格間隔輸入一字符串給字符數(shù)組輸入一字符串給字符數(shù)組 string i=0 , nu

34、m=0 , word=0當當 ( ( c=stringi ) !=0 )c= =空格空格真真真真假假假word=0word=1num=num+1i=i+1輸出:輸出:numword=0例如:有下面一行字符,例如:有下面一行字符,由一個空格間隔由一個空格間隔(jin g)。 I am a boy. 再比如:有多個空格間隔再比如:有多個空格間隔(jin g) I am a boy.第40頁/共52頁第四十一頁,共52頁。#include main() char string81; int i , num=0 , word=0; char c; gets(string); for(i=0;(c=st

35、ringi)!=0;i+) if(c= ) word=0; else if(word=0) word=1; num+; printf(There are %d words in the linen, num);第41頁/共52頁第四十二頁,共52頁。例例 2、 有三個字符串,找出其中有三個字符串,找出其中(qzhng)最大者最大者定義三個一維字符數(shù)組定義三個一維字符數(shù)組 str120,str220,str320 即即 定義部分定義部分(b fen): char str120 , str220 , str20 , str 20 ; 輸入部分輸入部分(b fen): gets(str1); get

36、s(str2); gets(str3);比較部分比較部分(b fen): if( strcmp(str1,str2)0) strcpy(str, str1); else strcpy(str,str2); if( strcmp(str3 , str) 0) strcpy(str,str3);輸出部分輸出部分(b fen): printf(“n the largest string is :%sn” ,str); 第42頁/共52頁第四十三頁,共52頁。例例 2、 有三個字符串,找出其中有三個字符串,找出其中(qzhng)最大者最大者 H o w 0 H e l l o 0 H i g h 0

37、str0str1str2#include #include main() char string20 , str320; int i; for(i=0;i0)strcpy(string,str0); else strcpy(string,str1); if(strcmp(str2,string)0)strcpy(string,str2); printf(nThe largest string is:n%sn,string);定義一個兩維字符數(shù)組定義一個兩維字符數(shù)組str320即即 3行行20列。每一行可以容納列。每一行可以容納(rngn)20個字符。如下圖:個字符。如下圖:第43頁/共52頁第

38、四十四頁,共52頁。1、若有代數(shù)、若有代數(shù)(dish)表達式表達式 ,則不正確的則不正確的C語言表達式是語言表達式是( ).A) a/b/c*e*3 B) 3*a*e/b/c C)3*a*e/b*c D) a*e/c/b*32、下列運算符中優(yōu)先級最高的是(、下列運算符中優(yōu)先級最高的是( ) A) B) + C) & D)!= 3、若有、若有 int x=3,y=4,z=5;則下面表達式中值為;則下面表達式中值為0的是(的是( )A) x & y B) x=y C) x | y+z & y-z D) !(x5) printf(“%dn”,m); else printf(%dn”,m-); A)

39、4 B) 5 C) 6 D) 7 6、以下程序輸出結(jié)果、以下程序輸出結(jié)果(ji gu)是是( ) main() int a=100,x=10,y=20,ok1=5,ok2=0; if(xy)if(y!=10) if(!ok1) a=1; else if(ok2) a=10;a=-1;printf(“%dn”,a); A) 1 B) 0 C) 1 D) 值不確定值不確定 CC第45頁/共52頁第四十六頁,共52頁。7、下面程序段的運行、下面程序段的運行(ynxng)結(jié)果是結(jié)果是( ) int n=0; while(n+=2) ; printf(“%d”,n);A) 2 B) 3 C) 4 D)有語法錯誤有語法錯誤 8、以下、以下(yxi)正確計算正確計算12310的程序段是的程序段是( )A) do i=1;s=1; B) doi=1;s=0; s=s* i; s=s*i; i+; i+; while(i=10); while(i=10);C) i=1;s=1; D) i=1;s=0;dos=s*i; dos=s*i;i+; i+;while(i=10); while(i=10);CC 第46頁/共5

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論