C語言清華大學(xué)出版社西安交通大學(xué)課件第章2_第1頁
C語言清華大學(xué)出版社西安交通大學(xué)課件第章2_第2頁
C語言清華大學(xué)出版社西安交通大學(xué)課件第章2_第3頁
C語言清華大學(xué)出版社西安交通大學(xué)課件第章2_第4頁
C語言清華大學(xué)出版社西安交通大學(xué)課件第章2_第5頁
已閱讀5頁,還剩49頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第七章數(shù)組掌握一維數(shù)組、二維數(shù)組的定義、初始化和引用。掌握字符串和字符數(shù)組的概念及其處理函數(shù)。掌握用數(shù)組進(jìn)行編程的技術(shù)。

先看一個例子:例:給出10個兒童的體重,要求計算平均體重并打印出低于平均體重的數(shù)值。用變量來解決問題:main(){intw1,w2,w3,w4,w5,w6,w7,w8,w9,w10;intt;scanf("%d%d%d%d%d%d%d%d%d%d",&w1,&w2,&w3,w4,&w5,&w6,&w7,&w8,&w9,&w10);t=(w1+w2+w3+w4+w5+w6+w7+w8+w9+w10)/10;if(w1<t)printf("%d\n",w1); if(w2<t)printf("%d\n",w2);if(w3<t)printf("%d\n",w3);if(w4<t)printf("%d\n",w4);if(w5<t)printf("%d\n",w5);if(w6<t)printf("%d\n",w6);if(w7<t)printf("%d\n",w7);if(w8<t)printf("%d\n",w8);if(w9<t)printf("%d\n",w9);if(w10<t)printf("%d\n",w10);}用數(shù)組來解決問題:main(){intw[10]; /*定義1個整型數(shù)組存放體重*/intt,i;for(i=0;i<10;i++)scanf("%d",&w[i]);for(t=0,i=0;i<10;i++)t=t+w[i];t=t/10;for(i=0;i<10;i++)if(w[i]<t)printf("%d\n",w[i]);}數(shù)組及其相關(guān)概念

數(shù)組是一組有序的、類型相同的數(shù)據(jù)的集合,這些數(shù)據(jù)被稱為數(shù)組的元素。數(shù)組下標(biāo)

每個數(shù)組都有一個名字,我們稱之為數(shù)組名。

為標(biāo)識數(shù)組中的每個元素,我們需要對它們進(jìn)行編號,這種編號我們稱之為數(shù)組元素的下標(biāo)。

由于有了下標(biāo),元素在數(shù)組中的位置(或排列順序)就被唯一地確定下來。我們用數(shù)組名加上下標(biāo)就可以準(zhǔn)確地訪問數(shù)組中的某個元素了。如:w[0]代表數(shù)組w中的第一個元素

w[9]代表數(shù)組w中的第十個元素

注意:C語言規(guī)定下標(biāo)從0開始。說明:數(shù)組名代表數(shù)組的起始地址。數(shù)組元素在內(nèi)存中是連續(xù)存儲的。7.1一維數(shù)組的定義和引用一、一維數(shù)組的定義定義一維數(shù)組的一般方式:

類型說明符數(shù)組名[常量表達(dá)式];指明數(shù)組元素的數(shù)據(jù)類型指明數(shù)組所含的元素個數(shù)例如:inta[10];/*定義的整型數(shù)組a含10個元素*/

floatb[20];/*定義的實型數(shù)組b含20個元素*/說明:⑴數(shù)組名的命名規(guī)則同變量名的命名規(guī)則一樣;⑵數(shù)組名后用方括號[],不能用()⑶常量表達(dá)式必須是大于0的整型常量表達(dá)式,不

能包含變量。即C語言不允許對數(shù)組的大小作動態(tài)定義,即定義數(shù)組時,數(shù)組的長度必須是確定的,其大小不依賴程序運行過程中變量的值。inta(10);

例如:intn;inta[n]charname[0];floatweight[10.3];floatarray[-100];二、一維數(shù)組的初始化1.定義時初始化方法:將初值依此寫在花括號{}內(nèi)。如:inta[5]={2,4,6,8,10};存儲形式:存儲單元說明:⑴如果在定義一維數(shù)組時給出了全部元素的初值,則數(shù)組的下標(biāo)允許省略。此時編譯系統(tǒng)將自動根據(jù)初始化數(shù)據(jù)的個數(shù)來確定數(shù)組的長度。如:inta[]={2,4,6,8,10};inta[];╳⑵初始化的數(shù)據(jù)個數(shù)允許少于數(shù)組的長度,但不

能多于數(shù)組的長度。當(dāng)初始化的數(shù)據(jù)個數(shù)(至少要有一個)少于數(shù)組的長度時,未初始化部分將被編譯系統(tǒng)自動用0賦值。如:inta[5]={2,4};

相當(dāng)于:a[0]=2,a[1]=4,a[2]=0,a[3]=0,a[4]=0

inta[5]={1,2,3,4,5,6,7,8};╳(3)如果果想想使使一一個個數(shù)數(shù)組組中中全全部部元元素素值值為為0,可可以以寫寫成成如::inta[5]={0,0,0,0,0};或inta[5]={{0};不能能寫寫成成inta[5]={{0*10};╳2.使用用其其它它方方法法初初始始化化⑵利用用輸輸入入語語句句初初始始化化main(){charas[26];inti;for(i=0;i<26;i++)scanf("%c",&as[i]);…...}⑴利用用賦賦值值語語句句初初始始化化main(){charas[26],ch;for(ch='A';ch<='Z';ch++)as[ch-'A']=ch;…...}三、一維數(shù)數(shù)組的引用用數(shù)組元素類類似于單個個變量,可可以自由地地存取。但但是,它與與一般變量量相比,有有以下特殊殊之處:⑴數(shù)組元素是是通過數(shù)組組名加上該該元素在數(shù)數(shù)組中的位位置(即數(shù)數(shù)組元素的的下標(biāo))來來訪問的。。

表示形式:

數(shù)組名[下標(biāo)]

如:a[3]其中,下標(biāo)可以是是整型常量量、整型變變量或整型型表達(dá)式。如:inta[10];inti=3;a[i]=10;floati=3;a[i]=10;⑵數(shù)組元元素的的下標(biāo)標(biāo)是從從0開始的的。如:inta[2];scanf(““%d,%d””,&a[1],&a[2]);⑶數(shù)組元元素的的賦值值是逐逐個元元素進(jìn)進(jìn)行的的,不不允許許把一一個數(shù)數(shù)組作作為一一個整整體賦賦給另另一個個數(shù)組組。除除了數(shù)數(shù)組初初始化化外,,也不不允許許用在在花括括號中中列表表的方方式對對數(shù)組組整體體賦值值。例1:inta[5]={2,4,6,8,10},b[5];b[5]=a[5];例2:inta[5];a[5]={2,4,6,8,10};⑷數(shù)組名名a代表的的是數(shù)數(shù)組a在內(nèi)存存中的的首地地址,,因此此,可可以用用數(shù)組組名a來代表表數(shù)組組元素素a[0]的地址址。

等價于scanf(“%d”,&a[0]);scanf(“%d”,a);四、一一維數(shù)數(shù)組應(yīng)應(yīng)用舉舉例例1:從鍵鍵盤上上輸入入10個實型型數(shù)存存入數(shù)數(shù)組,,然后按輸輸入順順序的的逆序序輸出出這10個數(shù)。。main(){floata[10];inti;for(i=0;i<10;i++)scanf(““%f”,&a[i]);for(i=9;i>=0;i--)printf(“%10.2f””,a[i]);}例7.2:用數(shù)數(shù)組來來處理理求斐斐波納納契數(shù)數(shù)列::1,1,2,3,5,8…的前20個數(shù)。。main(){intf[20]={1,1};for(i=2;i<20;i++)/*f[2]是數(shù)組組第3個元素素*/f[i]=f[i-2]+f[i-1];for(i=0;i<20;i++){printf(“%10d””,f[i]);if(i%2==0)printf(““\n”);/*每行打打印2個數(shù)*/}}數(shù)學(xué)學(xué)表表示示::f(0)=f(1)=1,f(n)=f(n-2)+f(n-1)例7.3:用用冒冒泡泡法法對對10個數(shù)數(shù)排排序序((由由小小到到大大))。。冒泡泡法法的的思思路路是是::將相相鄰鄰兩兩個個數(shù)數(shù)比比較較,,將將小小的的調(diào)到到前前頭頭。。988888895555559444444922222290000009第一一輪輪排排序序,,比比較較了了5次,,獲獲得得第第一一次次結(jié)結(jié)果果。剩數(shù)數(shù)輪輪數(shù)數(shù)5142332415main(){inta[11],i,j,t;printf(““Input10numbers:\n””);for(i=1;i<11;i++)scanf(““%d””,&a[i]);printf(““\n””);for(j=1;j<=9;j++)/*控制制9輪排排序序*/for(i=1;i<=10-j;i++)/*每輪輪排排序序比比較較次次數(shù)數(shù)*/if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}for(i=1;i<=10;i++)printf("%d",a[i]);}7.2二維維數(shù)數(shù)組組的的定定義義和和引引用用先看看一一個個例例子子::某校近三年年招收各專專業(yè)畢業(yè)生生情況如下下:計算機(jī)電電子管管理理數(shù)數(shù)學(xué)19999040803020001005090402001954510050要把這些數(shù)數(shù)據(jù)組織起起來,可以以有兩種選選擇:⑴按從左到右右從上到下下的順序存存入一個一一維數(shù)組中。(查查詢困難))⑵每年用一個個一維數(shù)組組,把這些些數(shù)據(jù)分別別存入三個數(shù)組中中。(增增加一年數(shù)數(shù)據(jù)困難))一、二維數(shù)數(shù)組的定義義

定義二維數(shù)組的一般方式:類型說明符數(shù)組名[常量表達(dá)式1][常量表達(dá)式2];如:inta[3][4];這種格式是是錯誤的: inta[3,4]

存儲形式:

二維數(shù)組在內(nèi)存中是按行的順序存放的,即先存放第一行的元素,再存放第二行的元素。

說明:二維數(shù)組除除了維數(shù)比比一維數(shù)組組多一維外外,其它它性質(zhì)與一一維數(shù)組是是全部類似似的??纯聪旅鎸憣懛ㄊ欠裾_?①inta[0][3];用于定義數(shù)數(shù)組長度的的常量表達(dá)達(dá)式的值必必須是大于于0的正整數(shù)。。②inti=3,j=4;inta[i][j];定義數(shù)組元元素的個數(shù)數(shù)必須使用用常量表達(dá)達(dá)式,而不不能使用變變量。二、二維數(shù)數(shù)組的初始始化這里主要介介紹定義時時初始化,,其它方法法初始化和和一維數(shù)組組類似。定定義時初始始化有兩種種方法:⑴分行初始化化例如:inta[2][3]={{1,2,3},{4,5,6}};即把第一個個花括弧內(nèi)內(nèi)的數(shù)據(jù)給給第一行的的元素,第第二個花括弧弧的數(shù)據(jù)給給第二行的的元素。⑵省略掉內(nèi)層層的花括號號即按數(shù)組元元素在內(nèi)存存中排列的的順序賦初初值。例如:inta[2][3]={1,2,3,4,5,6};這種方法效效果與前相相同,但以以第一種方方法為好,,一行對一一行,界限限清楚。第第二種方法法容易遺漏漏。說明:⑴在對二維數(shù)數(shù)組初始化化時,也可可以只對部部分?jǐn)?shù)組元元素初始化化,未被初初始化的數(shù)數(shù)組元素將將自動賦0。inta[2][3]={{5,6},{7,8}};inta[2][3]={5,6,7,8};如:得到的數(shù)組為:560780得到的數(shù)組為:567800⑵在對二維數(shù)數(shù)組初始化化時,如果果對全部元元素都賦初初值,或分分行賦初值值(每行至少一一個數(shù)據(jù)),則可以省省略第一維維數(shù)組長度度。但是,,第二維數(shù)組組長度不允允許省略。如:inta[][3]={1,2,3,4,5,6,7,8,9};inta[][4]={{1,2},{3,4,5,6},{7}};系統(tǒng)按3行處理floatf[2][]={1.1,2.2};三、二維數(shù)數(shù)組的引用用與引用一維維數(shù)組元素素一樣,是是用下標(biāo)法法引用二維維數(shù)組元素素的。表示形式::數(shù)組名[行下標(biāo)][列下標(biāo)]其中,行下標(biāo)和列下下標(biāo)是整型常常量、整型變變量或整型表表達(dá)式。其編編號是從0開始的。例如:若有inta[2*5][3*4],i=15;則使用a[3*3][0],a[1][i-5]都是合法的。。說明:數(shù)組名a代表的是數(shù)組組a在內(nèi)存中的首首地址,因此此,可以用數(shù)數(shù)組名a來代表數(shù)組元元素a[0][0]的地址。四、二維數(shù)組組應(yīng)用舉例例1:使用數(shù)組保保存“九九表表”,然后輸輸出。main(){inta99[10][10],i,j;for(i=1;i<10;i++)for(j=1;j<=i;j++)a99[i][j]=i*j;for(i=1;i<10;i++){for(j=1;j<=i;j++)printf(“%6d",a99[i][j]);printf(“\n””);}}例7.4:矩陣的轉(zhuǎn)置。(書中例7.4)a=123456b=142536轉(zhuǎn)換成main(){inta[2][3]={{1,2,3},{4,5,6}};intb[3][2],i,j;printf("arraya:\n");for(i=0;i<=1;i++){for(j=0;j<=2;j++){printf("%5d",a[i][j]);b[j][i]=a[i][j];}printf("\n");}printf("\narrayb:\n");for(i=0;i<3;i++){for(j=0;j<2;j++)printf("%6d",b[i][j]);printf("\n");}}例7.5:求3*4數(shù)組中的最大大值及其下標(biāo)標(biāo)。main(){intmax,row,colum,i,j;inta[][4]={{1,2,3,4},{9,8,7,6},{-10,10,-5,2}};max=a[0][0];for(i=0;i<3;i++)for(j=0;j<4;j++)if(a[i][j]>max){max=a[i][j];row=i;colum=j;}printf("max=%d,row=%d,colum=%d",max,row,colum);}7.3字符數(shù)組和字字符串一、字符數(shù)組組當(dāng)數(shù)組的元素素類型為字符符型時,被稱稱為字符數(shù)組。如:charc[10];則c為字符數(shù)組。。字符數(shù)組的定定義、初始化化和元素的引引用與一般的的數(shù)組相同。。如:main(){charch[5]={‘c’,‘h’,‘i’’,‘n’,‘‘a(chǎn)’};for(i=0;i<5;i++)printf(“%c”,ch[i]);}說明:⑴定義字符數(shù)組組的類型說明明符一般為char,如:charc[10];由于字符型與與整型的互相相通用性,因此,上面定定義也可改為為:intc[10];⑵初始化的字符符個數(shù)允許少于字符符數(shù)組的長度度,但不能多于字符符數(shù)組的長度度(按語法錯錯誤處理)。當(dāng)初始化的的字符(至少少要有一個))少于字符數(shù)數(shù)組的長度時時,未初始化化部分將被編編譯系統(tǒng)自動動用空字符‘\0’賦值。如:intc[8]={‘‘H’,‘e’,‘l’’,‘l’,‘o’};則:c[0]=‘H’,c[1]=‘e’’,c[2]=‘l’,c[3]=‘‘l’,c[4]=,‘o’c[5]=‘‘\0’,c[6]=‘\0’’,c[7]=‘\0’(3)如果提供的初初值個數(shù)與預(yù)預(yù)定的數(shù)組長長度相同,在在定義時可以以省略數(shù)組長長度,系統(tǒng)會會自動根據(jù)初初值個數(shù)確定定數(shù)組長度。。如:intc[]={‘H’,‘e’’,‘l’,‘l’,‘‘o’};數(shù)組c的長度自動定定為5。二、字符串與與字符數(shù)組字符串常量是用雙引號括括起來的一串串字符,由系系統(tǒng)自動加上上一個字符串串結(jié)束標(biāo)志‘‘\0’。它占內(nèi)存,,但不記入字字符串長度。。如:“china”占內(nèi)存6個字節(jié),但字字符串長度是是5在C語言中用字符符數(shù)組來處理理字符串,每每個元素存放放一個字符型型數(shù)據(jù)。字符型數(shù)組可可用一般數(shù)組組的初始化方方式初始化外外,還可以使使用字符串常常量初始化::如:charmessage[]={“Hello”};√或charmessage[]=“Hello”;√(這時,字符符數(shù)組長度是是6,字符串長度度是5。)注意:它與一般初始始化方式:charmessage[]={‘H’,‘e’,‘l’,‘l’,‘o’};初始化的結(jié)果果是不同的。。用一般初始化化方式結(jié)果::‘H’‘e’‘l’’‘l’‘‘o’用字符串常量量初始化::‘H’‘e’‘l’’‘l’‘‘o’‘‘\0’說明:字符數(shù)組本身身并不要求它它的最后一個個元素一定是是‘\0’,例如:charch[2]={‘A’,‘B’};是合法的。。當(dāng)定義字符符數(shù)組用字符符串常量賦初初值時,最后后有一個元素素其值為‘\0’。為了使處理理方法一致,,在字符數(shù)組組中也常常人人為地加上一一個值為‘\0’的元素。如:charmessage[]={‘H’,‘‘e’,‘‘l’,‘‘l’,‘‘o’,‘‘\0’};IBM\0\0\0例如charc[6]=““IBM”;數(shù)組c的前3個元素為‘I’,‘B’,‘M’,第四個元素素為’\0’,后兩個元素素也為空字符符。例7.7輸出一個鉆石石圖形main(){chardiamond[][5]={{‘’,’’’,’*’’},{‘’’,’*’,’’,’*’},{‘‘*’,’’’,’’,’’’,”*’’},{‘’,’*’,’’,’*’},{‘’,’’’,’*’’}};inti,j;for(i=0;i<5;i++){for(j=0;j<5;j++)printf(“%c””,diamond[i][j]);printf(“\n””);}}********三、字符數(shù)組組的輸入輸出出字符數(shù)組的輸輸入輸出可以以有以下兩種種方法:⑴逐個個字字符符輸輸入入輸輸出出用格格式式符符““%c””輸入入或或輸輸出出一一個個字字符符。。⑵將整整個個字字符符串串一一次次輸輸入入或或輸輸出出。。用格格式式符符““%s””輸入入輸輸出出字字符符串串。例如如::charc[]=““Hello””;printf(““%s””,c);注意意::⑴輸出出字字符符不不包包括括結(jié)結(jié)束束符符‘‘\0’’。⑵用““%s””格式式符符輸輸出出字字符符串串時時,,printf函數(shù)的輸輸出項是是字符數(shù)數(shù)組名,,而不是是數(shù)組元元素名。。⑶輸出字符符數(shù)組時時,遇到到第一個個‘\0’’,輸出就就結(jié)束。。如charc[10]=“china”;printf(“%s”,c);只輸出““china”5個字符,,而不是是10個字符。。⑷用“%s”格式符輸輸入字符符串時,,scanf函數(shù)的輸出項是是字符數(shù)數(shù)組名時時,不要要再加地地址符&,因為C語言中中數(shù)組名名代表該該數(shù)組的的起始地地址。如:charstr[10];scanf(““%s””,&str);⑸用“%s”格式符輸輸入字符符串時,,scanf函數(shù)的輸出項是字符數(shù)組名名時,從鍵鍵盤輸入的的字符串應(yīng)應(yīng)短于已定定義的字符數(shù)組的長長度。系統(tǒng)自動動在后面加加個‘\0’結(jié)束符。例如scanf(“%s”,c);charc[6];從鍵盤輸入入china系統(tǒng)自動在在后面加一一個’\0’結(jié)束符。⑹利用scanf函數(shù)輸入多多個字符串串時,是以以空格、回回車、跳格分隔。。例如:charstr1[5],str2[5],str3[5];scanf(“%s%s%s”,str1,str2,str3);輸入數(shù)據(jù)::howareyou?輸入后str1為:how\0; str2為:are\0; str3為:you?\0如果改為charstr[13];scanf(“%s”,str);如果果輸輸入入以以下下12個字字符符howareyou?實際際上上不不是是把把這這12個字字符符加加上上’’\0’’送到到數(shù)數(shù)組組中中,,而而只只將將空格格前前的的字字符符””how””送到到str,并并在在后后面面加加上上一一個個’’\0’’。所以以str為::how\0main(){chara[5];inti=0;while(i<=4){scanf(““%c””,&a[i]);i++;}}}輸入入數(shù)數(shù)據(jù)據(jù)::abccdgmain(){chara[5];inti=0scanf(““%s””,a);printf(““%s””,a);}a[0]a[1]a[2]a[3]a[4]abc\0\0a[1]a[2]a[3]a[4]abcc四、、字字符符串串函函數(shù)數(shù)㈠、字字符符串串輸輸入入輸輸出出函函數(shù)數(shù)1.字符符串串輸輸入入gets()函數(shù)數(shù)使用用形形式式::gets(字符符數(shù)數(shù)組組)功能能::從終終端端輸輸入入一一個個字字符符串串(直到到回回車車鍵鍵)到字字符符數(shù)數(shù)組組中中。。并并得得到到一一個個函函數(shù)數(shù)值值,,即即字字符符數(shù)組組的的起起始始地地址址例如:charstr[20];gets(str);若從鍵盤輸入入:HelloWorld!則將字符串“HelloWorld!”送到字符數(shù)組組str中。2.字符串輸出puts()函數(shù)使用形式:puts(字符數(shù)組)功能:將一個字符串串輸出到終端端。在輸出時時,將字符串串結(jié)束標(biāo)志轉(zhuǎn)轉(zhuǎn)換成‘\n’,即輸出完完字符串后換換行。例如:charstr[]={“China\nBeijing”};puts(str);輸出:ChinaBeijing注意:使用puts和gets函數(shù)前,要用用預(yù)編譯命令令:#include“stdio.h”。1.字符串連接strcat()函數(shù)使用形式:strcat(字符數(shù)組1,字符數(shù)組2)功能:連接兩個字符符串,把字符符串2連接到字符串1的后面,連接接后的字符串串放在字符數(shù)組1中。說明::⑴字符符數(shù)組組1必須足足夠大大以便便能夠夠容納納字符符串2。⑵連接接時只只在新新串最最后保保留一一個‘‘\0’’??磿鴓136例子㈡、字符符串處處理函函數(shù)注意::使用這這些函函數(shù)前前,要要用#include““string.h”2.字符串串復(fù)制制strcpy()函數(shù)使用形式:

strcpy(字符數(shù)組1,字符串2)功能:將字符符串2復(fù)制到到字符符數(shù)組組1中(其后自自動加加一個個‘\0’’)。例如::charstr1[20],str2[10];strcpy(str1,“helloworld”);strcpy(str2,str1);其中,字符串串2可以是字符串串常量或字符符數(shù)組。說明:⑴字符數(shù)組1必須足夠大以以便能夠容納納被復(fù)制的字符串串。⑵不能用賦值語語句將一個字字符串常量或或字符數(shù)組直接賦值值給一個字符符數(shù)組。例如:charstr1[20],str2[20];str1={“hello”};str2=str1;(3)“字符數(shù)組1”必須寫成數(shù)組組名形式(如如str1),“字符串串2”可以是字符數(shù)數(shù)組名,也可可以是一個字字符串常量。。(4)復(fù)制時連同字字符串后面的的’\0’一起復(fù)制到字字符數(shù)組1中。3.字符串比較strcmp()函數(shù)使用形式:strcmp(字符串1,字符串2)其中,字符串串可以是字符符串常量或字字符數(shù)組。功能:比較兩個字符符串。比較的原則:兩個字符串從從左至右逐個個對應(yīng)字符按按其ASCII碼值大小相比比較,直到出出現(xiàn)不同的字字符或遇到‘‘\0’為止。如全部部字符相同,,則認(rèn)為相等等;若出現(xiàn)不不同字符,以以第一個不相相同字符的比比較結(jié)果為準(zhǔn)準(zhǔn)。若設(shè)n=strcmp(字符串1,字符串2);

n>0;串1>串2

則:n=n=0;串1=串2n<0;串1<串2例如:charstr1[20],str2[10];(將str1[20]和str2[10]賦初值)if(strcmp(str1,str2)>0)puts(str1);注意:不能寫成if(str1>str2)既不能關(guān)系運運算符比較字字符串。strcmp(“China”,””Korea”);4.求字符串長長度strlen()函數(shù)使用形式::strlen(字符數(shù)組)功能:計算字符串串長度,函函數(shù)值是字字符串中‘‘\0’之前的字符符個數(shù)(不不包括‘\0’字符)。例如:charstr[80]={“ab\n\\012/\\\””};printf(““%d””,strlen(str));輸出出::10charstr[80]={““ab\n\0y\012/\\\”””};printf(““%d””,strlen(str));輸出出::35.將字字符符串串中中大大寫寫字字母母換換成成小小寫寫字字母母strlwr()函數(shù)數(shù)使用用形形式式:strlwr(字符符串串)6.將字字符符串串中中小小寫寫字字母母換換成成大大寫寫字字母母strupr函數(shù)數(shù)使用用形形式式:strupr(字符符串串)五、、字字符符數(shù)數(shù)組組應(yīng)應(yīng)用用舉舉例例例1:(例題題7.8)統(tǒng)計計字字符符

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論