




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第4章數(shù)組和字符串第4章數(shù)組和字符串4.1數(shù)組的概念4.2一維數(shù)組4.3二維數(shù)組4.4字符串與字符函數(shù)4.1數(shù)組的概念1.數(shù)組的定義2.數(shù)組的數(shù)據(jù)類型3.數(shù)組的維數(shù)2.數(shù)組的數(shù)據(jù)類型數(shù)組的數(shù)據(jù)類型可以是各種基本數(shù)據(jù)類型,如int、float、double、char、long等。還可以指針型、結(jié)構(gòu)體型、共用體型、枚舉型(后續(xù)章節(jié)將介紹)等。C語(yǔ)言規(guī)定,同一數(shù)組中的所有元素必須是相同類型的,不允許同一個(gè)數(shù)組中包含不同的數(shù)據(jù)類型。3.數(shù)組的維數(shù)
一維數(shù)組的元素有一個(gè)下標(biāo)、二維數(shù)組的元素有兩個(gè)下標(biāo)、三維數(shù)組有三個(gè)下標(biāo)。C語(yǔ)言的數(shù)組可以是多維的,但一般常用的是一維數(shù)組和二維數(shù)組。4.2一維數(shù)組4.2.1一維數(shù)組的定義4.2.2一維數(shù)組的初始化4.2.3一維數(shù)組的引用(3)數(shù)組名后的“數(shù)組長(zhǎng)度”表示數(shù)組中數(shù)據(jù)元素的個(gè)數(shù),通常是一個(gè)整型常量、整型變量或整型表達(dá)式。例如在m[8]中,表示數(shù)組m有8個(gè)元素,下標(biāo)從0開始一直到7,這8個(gè)數(shù)組元素分別是:m[0]、m[1]、m[2]、m[3]、m[4]、m[5]、m[6]、m[7],注意沒(méi)有m[8]。(4)一個(gè)數(shù)組定義語(yǔ)句中可以只定義一個(gè)數(shù)組,也可以定義多個(gè)數(shù)組,還可以同時(shí)定義數(shù)組和變量。例如:doublea[10],b1;/*定義了一個(gè)有10個(gè)元素的雙精度型數(shù)組a和一個(gè)雙精度型變量b1*/又例如:charf[8],e1;/*定義了一個(gè)有8個(gè)元素的字符型數(shù)組f和一個(gè)字符型變量e1*/4.2.2一維數(shù)組的初始化在定義數(shù)組的同時(shí)給數(shù)組元素賦予初值稱為數(shù)組的初始化。初始化賦值的一般形式為:類型說(shuō)明符數(shù)組名[常量表達(dá)式]={數(shù)據(jù)值1,數(shù)據(jù)值2,…,數(shù)據(jù)值n};其中在{}中的各數(shù)據(jù)值即為各元素的初值,各值之間用逗號(hào)間隔。C語(yǔ)言對(duì)數(shù)組的初始化賦值還有以下幾點(diǎn)規(guī)定:(1)可以只給部分元素賦初值。沒(méi)有賦初值的元素:對(duì)于數(shù)值型數(shù)組,自動(dòng)賦初值為0;對(duì)字符型數(shù)組,自動(dòng)賦初值為空字符。例如:intm[10]={1,2,3,4};定義的數(shù)組m有10個(gè)元素,但大括號(hào)內(nèi)只有4個(gè)初值,這表示只給前面4個(gè)元素賦初值,后6個(gè)元素值均為0。(2)只能給元素逐個(gè)賦值,不能給數(shù)組整體賦值。例如:給數(shù)組m中的10個(gè)元素全部賦值“2”只能用以下形式來(lái)表示:intm[10]={2,2,2,2,2,2,2,2,2,2};而不能為了方便寫成如下的形式:inta[10]=2;(3)如果給全部元素賦值,則在數(shù)組說(shuō)明中,可以不給出數(shù)組元素的個(gè)數(shù)。其長(zhǎng)度等于初值表中數(shù)組元素的個(gè)數(shù)。例如:intm[5]={1,2,3,4,5};可寫為:intm[]={1,2,3,4,5};1.引用說(shuō)明(1)下標(biāo)表達(dá)式必須放在方括號(hào)內(nèi),且只能取整型值。下標(biāo)的下限是0,而上限不能超過(guò)該數(shù)組定義時(shí)的長(zhǎng)度值減1(即:數(shù)組長(zhǎng)度-1)。(2)數(shù)組中的下標(biāo)只能為整型常量或整型表達(dá)式。(3)在C語(yǔ)言中只能單獨(dú)地使用數(shù)組元素,而不能一次引用整個(gè)數(shù)組。(4)任何一個(gè)數(shù)組元素的引用都可以看成是一個(gè)變量的使用。例4.1數(shù)組元素的賦值及引用舉例。#include<stdio.h>main(){ inti,m[8]; for(i=0;i<=7;i++)m[i]=i; for(i=7;i>=0;i--)printf("%d",m[i]);}程序的運(yùn)行結(jié)果如下:76543210C語(yǔ)言允許用表達(dá)式表示下標(biāo)。例4.2數(shù)組元素用表達(dá)式表示下標(biāo)應(yīng)用舉例。#include<stdio.h>main(){
inti,m[8];
for(i=0;i<8;)
m[i++]=2*i+2;
for(i=0;i<=7;i++)
printf("%d",m[i]); }
程序的最后運(yùn)行結(jié)果如下:246810121416#include<stdio.h>main(){ intn,i,m,x,min,min_m,a[100]; printf("Pleaseinputthevalueofn:");scanf(“%d”,&n);/*輸入要排序數(shù)的個(gè)數(shù)n不能大于100*/printf("Pleaseinputyournumber:\n");for(i=0;i<n;i++) /*輸入n個(gè)要求排序的數(shù)*/scanf("%d",&a[i]);for(m=0;m<n-1;m++)/*控制排序總共進(jìn)行n-1步*/{min=a[m];/*設(shè)定第m個(gè)數(shù)是當(dāng)前最小數(shù)*/ min_m=m;/*用min_m記錄最小數(shù)的下標(biāo)*/ for(i=m;i<n;i++)/*尋找最小數(shù)*/ if(a[i]<min)/*如果當(dāng)前數(shù)小于最小數(shù)*/ {min=a[i]; /*記錄新的最小數(shù)和下標(biāo)*/ min_m=i;x=a[min_m];
/*交換最小數(shù)和第m個(gè)數(shù)的位置*/a[min_m]=a[m];a[m]=x;}for(i=0;i<n;i++)printf("%d",a[i]);printf("\n");}程序的運(yùn)行結(jié)果如下:Pleaseinputthevalueofn:6↙pleaseinputyournumber:5345627840↙2344056784.3二維數(shù)組4.3.1二維數(shù)組的定義4.3.2二維數(shù)組的初始化4.3.3二維數(shù)組的引用1.二維數(shù)組定義的一般形式二維數(shù)組定義的一般形式為:類型說(shuō)明符數(shù)組名[行數(shù)][列數(shù)]其中“行數(shù)”表示第一維下標(biāo)的長(zhǎng)度,“列數(shù)”則表示第二維下標(biāo)的長(zhǎng)度。例如:intm[4][5];
/*定義了一個(gè)數(shù)組名為m的二維數(shù)組,其中行數(shù)為4、列數(shù)為5*/該數(shù)組的數(shù)組元素共有4×5=20個(gè),分別為:m[0][0],m[0][1],m[0][2],m[0][3],m[0][4]m[1][0],m[1][1],m[1][2],m[1][3],m[1][3]m[2][0],m[2][1],m[2][2],m[2][3],m[2][3]m[3][0],m[3][1],m[3][2],m[3][3],m[3][4]2.對(duì)二維數(shù)組的說(shuō)明(1)二維數(shù)組在概念上是二維的,也就是說(shuō)其下標(biāo)在兩個(gè)方向上變化。(2)在C語(yǔ)言中,二維數(shù)組是按行排列的。(3)數(shù)組元素所占的存儲(chǔ)位置跟其類型有關(guān)系。(4)一個(gè)二維數(shù)組可以看成為若干個(gè)一維數(shù)組。注意:二維數(shù)組中m[2][3]中的m[0]和m[1]不能當(dāng)作數(shù)組元素使用,因?yàn)樗鼈兪且痪S數(shù)組名,不是一個(gè)單純的數(shù)組元素。4.3.2二維數(shù)組的初始化1.二維數(shù)組初始化的一般形式2.對(duì)二維數(shù)組初始化的說(shuō)明1.二維數(shù)組初始化的一般形式二維數(shù)組初始化的一般形式為:數(shù)據(jù)類型說(shuō)明符數(shù)組名[行數(shù)][列數(shù)]={{數(shù)據(jù)值,數(shù)據(jù)值,……,數(shù)據(jù)值},{數(shù)據(jù)值,數(shù)據(jù)值,……,數(shù)據(jù)值}};或者數(shù)據(jù)類型說(shuō)明符數(shù)組名[行數(shù)][列數(shù)]={數(shù)據(jù)值,數(shù)據(jù)值,……,數(shù)據(jù)值};(3)如果對(duì)全部元素賦初值,則第一維的長(zhǎng)度可以省略。例如:intm[3][3]={1,2,3,4,5,6,7,8,9};可以寫為:intm[][3]={1,2,3,4,5,6,7,8,9};表示數(shù)組m[][3]的第一維長(zhǎng)度是3。需要注意的是:使用這種方法賦初值,必須給出所有數(shù)組元素的初值,如果初值的個(gè)數(shù)不正確,則系統(tǒng)將作出錯(cuò)處理。例4.4從鍵盤上輸入一個(gè)3×4的矩陣,將其轉(zhuǎn)換后形成4×3矩陣輸出。分析:矩陣的轉(zhuǎn)置是將矩陣的行和列進(jìn)行互換,使其行成為列,列成為行,例如:原矩陣為:2346789101112159261037114812轉(zhuǎn)置后的矩陣為:#include<stdio.h>main(){intm[3][4],n[4][3],i,j;printf("Pleaseenterthenumberofm[3][4]:\n");for(i=0;i<3;i++)/*輸入一個(gè)3×4的矩陣存放在數(shù)組m中*/for(j=0;j<4;j++)scanf("%d",&m[i][j]);for(i=0;i<4;i++)/*將數(shù)組m中矩陣轉(zhuǎn)置后存放數(shù)組n中*/
for(j=0;j<3;j++)n[i][j]=m[j][i];printf("Thenumberofn[4][3]is:\n");for(i=0;i<4;i++)/*輸出n數(shù)組中的4×3矩陣*/{for(j=0;j<3;j++)printf("%d",n[i][j]);printf("\n");}}程序的運(yùn)行情況為:Pleaseenterthenumberofm[3][4]:111122223333Thenumberofn[4][3]is:1231231231234.3.3二維數(shù)組的引用二維數(shù)組元素的引用形式為:數(shù)組名[下標(biāo)表達(dá)式1][下標(biāo)表達(dá)式2]其中,下標(biāo)表達(dá)式1表示行下標(biāo),下標(biāo)表達(dá)式2表示列下標(biāo),二者必須分別放在兩個(gè)方括號(hào)內(nèi)。關(guān)于下標(biāo)表達(dá)式類型的限制及下標(biāo)越界的處理與一維數(shù)組相同。例如:inta[2][3];a[0][1]=’a’;其中的“a[0][1]=’a’;”就是對(duì)二維數(shù)組“a[2][3]”中一個(gè)元素的引用。例4.5求矩陣m[3][4]各個(gè)元素中的最小值,并輸出最小值元素所在的行和列。#include<stdio.h>main(){inti,j;intx,y;intm[3][4]={{12,1,2,4},{2,3,4,5},{5,6,7,8}};intmin=m[0][0];for(i=0;i<3;i++) for(j=0;j<4;j++)if(min>m[i][j]){min=m[i][j];x=i;y=j;
}printf("Theminofm[3][4]is%d.\n",min);printf("Therowofminis%dandthecolumofminis%d.",x,y);}程序的運(yùn)行結(jié)果為:Theminofm[3][4]is1.Therowofminis0andthecolumofminis1.4.4字符串與字符函數(shù)4.4.1字符數(shù)組4.4.2字符串與字符數(shù)組4.4.3字符串處理函數(shù)4.4.4字符串函數(shù)應(yīng)用舉例4.4.1字符數(shù)組1.字符數(shù)組的定義2.字符數(shù)組的初始化3.字符數(shù)組舉例1.字符數(shù)組的定義字符數(shù)組定義格式如下:類型名數(shù)組名[數(shù)組元素個(gè)數(shù)];其中的“類型名”必須是char。例如:
charc[10];定義了一個(gè)名為c的字符數(shù)組,包含10個(gè)元素。和數(shù)值數(shù)組一樣,字符數(shù)組也可以是二維或多維數(shù)組。例如:charc[8][9];2.字符數(shù)組的初始化在定義字符數(shù)組時(shí),可以直接對(duì)字符數(shù)組進(jìn)行初始化。給字符數(shù)組賦初值時(shí),如果花括號(hào)中字符的個(gè)數(shù)大于字符數(shù)組定義的數(shù)據(jù)元素的個(gè)數(shù),則編譯系統(tǒng)會(huì)報(bào)告出錯(cuò)。如果花括號(hào)中數(shù)據(jù)元素的個(gè)數(shù)小于字符數(shù)組定義的數(shù)據(jù)元素的個(gè)數(shù),C語(yǔ)言規(guī)定:初始化中未給出數(shù)據(jù)元素值得對(duì)應(yīng)元素被自動(dòng)賦值為空字符'\0'。例如:charc[10]={'c','','p','r','o','g','r','a','m'};賦值后各元素的值如下所示:c[0]='c' c[1]=''c[2]='p' c[3]='r'c[4]='o' c[5]='g'c[6]='r' c[7]='a'c[8]='m' c[9]='\0'3.字符數(shù)組舉例例4.7在計(jì)算機(jī)屏幕上顯示“HelloWorld”。#include<stdio.h>main(){charstr[13]={'H','e','l','l','o','','W','o','r','l','d','!'};
/*定義并初始化數(shù)組*/inti;/*用于輸出字符數(shù)組中字符的個(gè)數(shù)*/for(i=0;i<13;i++)printf(“%c”,str[i]);/*顯示字符數(shù)組*/printf("\n");}程序運(yùn)行后的輸出結(jié)果為:HelloWorld!例4.8輸出一個(gè)鉆石圖形。#include<stdio.h>main(){staticchardiamond[][5]={{'','','*'},{'','*','','*'},{'*','','','','*'},{'','*','','*'},{'','','*'}};/*第二維大小不能省略*/
inti,j;for(i=0;i<5;i++)/*逐行*/
{for(j=0;j<5;j++)/*逐列*/printf("%c",diamond[i][j]);printf("\n");}}該程序的運(yùn)行結(jié)果如下:********4.4.2字符串與字符數(shù)組1.字符串初始化賦值2.用二維數(shù)組存放多個(gè)字符串3.字符數(shù)組的輸入/輸出4.字符串大小的比較1.字符串初始化賦值C語(yǔ)言允許用字符串的方式對(duì)數(shù)組作初始化賦值。具體有兩種方式:(1)按單個(gè)字符的方式賦初值,其中必須有一個(gè)字符是字符串的結(jié)束標(biāo)記。例如:chars[]={'1','2','3','\0'};(2)直接在初值表中寫一個(gè)字符串常量。例如:chars[]={"123"};其中的“{}”可以省略,如:chars[]="123";表示s[0]的值為'1',s[1]的值為'2',s[2]的值為'3',s[3]的值為'\0'。字符數(shù)組s中存放的是一個(gè)字符串。2.用二維數(shù)組存放多個(gè)字符串當(dāng)需要處理多個(gè)字符串時(shí),可以采用二維數(shù)組,此時(shí)二維數(shù)組列值取最大字符串的長(zhǎng)度。例如:存放三個(gè)字符串”123”、”ab”、”A”可采用如下的形式:chars[3][4]={"123","ab","A"};表示:s[0][0]的值為'1',s[0][1]的值為'2',s[0][2]的值為'3',s[0][3]的值為'\0';s[1][0]的值為'a',s[1][1]的值為'b',s[1][2]的值為'\0';s[2][0]的值為'A',s[2][1]的值為'\0'。3.字符數(shù)組的輸入/輸出關(guān)于字符數(shù)組的輸入/輸出,C語(yǔ)言有如下規(guī)定:(1)逐個(gè)字符輸入/輸出。用格式符"%c"輸入/輸出一個(gè)字符。(2)將整個(gè)字符串一次性輸入/輸出。用格式符"%s"對(duì)整個(gè)字符串進(jìn)行一次性輸入/輸出。注意:使用"%s"格式從鍵盤上向字符數(shù)組中輸入字符串時(shí),回車換行符或空格符號(hào)均作為字符串的結(jié)束標(biāo)記。例4.9對(duì)字符數(shù)組中的元素進(jìn)行逐個(gè)輸出舉例。#include<stdio.h>main(){charc[7]={'C','','H','e','l','l','o'};inti;for(i=0;i<7;i++)printf("%c",c[i]);printf("\n");}程序的運(yùn)行結(jié)果為:CHello例4.10字符串方式輸出字符數(shù)組中的元素舉例。#include<stdio.h>main(){ charc[]="Howareyou"; printf("%s\n",c);}程序運(yùn)行后的輸出結(jié)果為:Howareyou例4.11請(qǐng)輸入一個(gè)長(zhǎng)度小于20的字符串,并將該字符串輸出。#include<stdio.h>main(){ charm[20]; printf("inputstring:\n"); scanf("%s",m); printf("%s\n",m);}注意:當(dāng)用scanf函數(shù)輸入字符串時(shí),字符串中不能含有空格,否則將以空格作為串的結(jié)束符。例如,當(dāng)輸入的字符串中含有空格時(shí),運(yùn)行情況為:
inputstring:hellohuman↙hello從輸出結(jié)果可以看出,空格以后的字符都未能輸出。為了避免這種情況,可多設(shè)幾個(gè)字符數(shù)組分段存放含空格的串。程序可改寫成如下形式:#iclude<stdio.h>main(){ charm1[6],m2[6]; printf("inputstring:\n"); scanf("%s%s",m1,m2); printf("%s%s\n",m1,m2);}修改后的程序運(yùn)行情況為:inputstring:abcdefghi↙abcdefghi4.字符串大小的比較字符串可以進(jìn)行大小比較,比較時(shí)按照從前向后的順序逐個(gè)字符比大小。字符大的對(duì)應(yīng)字符串就大。例如:"abcd"小于"bcde"。如果全部字符均相同,則字符串相等。例如:"abcd"等于"abcd"。如果字符串長(zhǎng)度不等,而前面字符均相同,則長(zhǎng)度大的字符串為大。例如:"abcd"大于"abc"。4.4.3字符串處理函數(shù)1.字符串輸出函數(shù)puts2.字符串輸入函數(shù)gets3.測(cè)試字符串長(zhǎng)度函數(shù)strlen
4.字符串連接函數(shù)strcat5.字符串比較函數(shù)strcmp6.字符串拷貝函數(shù)strcpy7.小寫變大寫函數(shù)strupr8.大寫變小寫函數(shù)strlwr1.字符串輸出函數(shù)putsputs函數(shù)調(diào)用的一般形式為:puts(字符數(shù)組);該函數(shù)的功能是:把字符數(shù)組中的字符串輸出到顯示器,即在屏幕上顯示該字符串的內(nèi)容。其中,字符串的結(jié)束標(biāo)記將轉(zhuǎn)換成回車換行符。例4.12puts函數(shù)的應(yīng)用舉例。#include"stdio.h"main(){charc[]="Hello\nHuman";puts(c);}程序運(yùn)行后,將在顯示器上輸出:Hellohuman2.字符串輸入函數(shù)getsgets函數(shù)的一般調(diào)用形式為:gets(字符數(shù)組);該函數(shù)的功能是:從標(biāo)準(zhǔn)輸入設(shè)備——鍵盤上輸入一個(gè)字符串,并存入到指定的字符數(shù)組中。
例4.13gets函數(shù)的應(yīng)用舉例。#include"stdio.h"main(){charm[20];printf("inputstring:\n");gets(m);puts(m);}程序的運(yùn)行情況為:Inputstring:hellohuman↙hellohuman可以看出當(dāng)輸入的字符串中含有空格時(shí),輸出仍為全部字符串。這說(shuō)明gets函數(shù)并不以空格作為字符串輸入結(jié)束的標(biāo)志,而只以回車作為輸入結(jié)束的標(biāo)志。注意:gets函數(shù)和使用"%s"格式的scanf函數(shù)都可以從鍵盤接受字符串,但在輸入時(shí)有所區(qū)別:(1)對(duì)于scanf函數(shù),"回車"或"空格"都看成字符串結(jié)束標(biāo)記;(2)對(duì)于gets函數(shù),只有“回車”才作為字符串結(jié)束標(biāo)記,“空格”看成字符串的一部分。說(shuō)明:puts函數(shù)和gets函數(shù)只能輸入/輸出一個(gè)字符串。例如:puts(str1,str2);和gets(str1,str2,str3);都是錯(cuò)誤的。3.測(cè)試字符串長(zhǎng)度函數(shù)strlenstrlen函數(shù)的功能是:測(cè)試指定字符串的實(shí)際長(zhǎng)度(不含字符串結(jié)束標(biāo)志'\0'),并返回字符串的長(zhǎng)度。其一般的調(diào)用形式為:strlen(字符數(shù)組);其中,函數(shù)的參數(shù)可以是字符型數(shù)組名或字符串常數(shù),函數(shù)的返回值是字符串長(zhǎng)度。例4.14strlen函數(shù)的應(yīng)用舉例。#include<string.h>#include<stdio.h>main(){
intn;staticcharm[]="HelloHuman";n=strlen(m);printf("Thelenthofthestringis%d\n",n);}程序的運(yùn)行結(jié)果如下:Thelenthofthestringis114.字符串連接函數(shù)strcatstrcat函數(shù)的調(diào)用格式為:
strcat(字符數(shù)組1,字符數(shù)組2);該函數(shù)的功能是:把字符數(shù)組2中的字符串連接到字符數(shù)組1中字符串的后面,同時(shí)刪去字符串1中的串標(biāo)志’\0’,組成新的字符串。該函數(shù)返回值是字符數(shù)組1的首地址。例4.15strcat函數(shù)的應(yīng)用舉例。#include<string.h>#include<stdio.h>main(){staticcharm1[30]="Mynameis";charm2[10];printf("inputyourname:\n");gets(m2);strcat(m1,m2);puts(m1);}程序的運(yùn)行情況如下:inputyourname:human↙Mynameishuman5.字符串比較函數(shù)strcmpstrcmp函數(shù)用來(lái)對(duì)兩個(gè)字符串進(jìn)行比較,其調(diào)用格式為strcmp(字符串1,字符串2);其中,字符串1和字符串2可以是字符型數(shù)組名或字符串常數(shù)。該函數(shù)的功能是按照ASCII碼順序比較兩個(gè)數(shù)組中的字符串,并由函數(shù)返回值返回如下所示的比較結(jié)果:字符串1等于字符串2時(shí),返回值為:0。字符串1大于字符串2時(shí),返回值為:字符串1-字符串2的值,大于0。字符串1小于字符串2時(shí),返回值為:字符串1-字符串2的值,小于0。例4.16strcmp函數(shù)的應(yīng)用舉例。#include<stdio.h>#include<string.h>main(){intn;staticcharm1[15],m2[]="hellohuman";printf("inputastring:\n");gets(m1);n=strcmp(m1,m2);if(n==0)printf(“m1equalem2\n");if(n>0)printf("m1>m2\n");if(n<0)printf("m1<m2\n");}程序運(yùn)行情況如下:inputastring:abcd↙m1<m26.字符串拷貝函數(shù)strcpy字符串拷貝函數(shù)strcpy的調(diào)用格式為:strcpy(字符數(shù)組1,字符數(shù)組2);其功能是:把字符數(shù)組2中的字符串拷貝到字符數(shù)組1中。串結(jié)束標(biāo)志‘\0’也一同拷貝。說(shuō)明:字符數(shù)組2也可以是一個(gè)字符串常量。這時(shí)相當(dāng)于把一個(gè)字符串賦予一個(gè)字符數(shù)組。
例4.17strcpy函數(shù)的應(yīng)用舉例。#include"string.h"main(){charm1[15],m2[]="hellohuman";strcpy(m1,m2);puts(m1);printf("\n");}程序的運(yùn)行結(jié)果如下:hellohuman7.小寫變大寫函數(shù)struprstrupr函數(shù)用來(lái)將字符串中的小寫字母轉(zhuǎn)換成大寫字母,其他字符(包括大寫字母和非字母)不轉(zhuǎn)換。其調(diào)用格式為:
strupr(字符串);其中,函數(shù)的參數(shù)可以是字符型數(shù)組名或字符串常數(shù),函數(shù)的返回值是轉(zhuǎn)換后的字符串。upr表示uppercase。例4.18將輸入的字符串中的所有小寫字母轉(zhuǎn)換成大寫字母,并輸出。#include<stdio.h>#include<string.h>main(){charstr[80];puts("pleaseinputastring:");gets(str);strupr(str);puts(str);}程序的運(yùn)行情況為:pleaseinputastring:welcome↙WELCOME8.大寫變小寫函數(shù)strlwrstrlwr函數(shù)用來(lái)將字符串中的大寫字母轉(zhuǎn)換成小寫字母,其他字符(包括小寫字母和非字母)不轉(zhuǎn)換。其調(diào)用格式為strlwr(字符串);其中,函數(shù)的參數(shù)可以是字符型數(shù)組名或字符串常數(shù),函數(shù)的返回值是轉(zhuǎn)換后的字符串。lwr表示lowercase。例4.19將輸入的大寫字母字符串轉(zhuǎn)換成小寫字母字符串,并輸出。#include<stdio.h>#include<string.h>main(){charst[80];
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 有限合伙企業(yè)協(xié)議書法
- 美業(yè)消費(fèi)型合伙人協(xié)議書
- 問(wèn)界試駕協(xié)議書
- 協(xié)議書出讓的流程
- 銷售協(xié)議書英文
- 電子支付投訴解決方案
- 浙教版信息技術(shù)八年級(jí)下 第九課 影片剪輯制作與應(yīng)用 說(shuō)課稿
- 電子商務(wù)技術(shù)員軟件資格考試新考綱試題集解析2025年附答案
- 二級(jí)注冊(cè)建筑師真題答案解析2025年
- 2025年安全生產(chǎn)月活動(dòng)《安全知識(shí)》答題活動(dòng)模擬題(附答案)
- 混凝土凝結(jié)時(shí)間隨機(jī)
- 企業(yè)數(shù)字化轉(zhuǎn)型的國(guó)外研究現(xiàn)狀
- 第六講-關(guān)于學(xué)術(shù)規(guī)范課件
- 法學(xué)類專業(yè)課復(fù)習(xí)資料-馬工程《憲法學(xué)》重點(diǎn)整理
- DB11T 2100-2023承插型盤扣式鋼管腳手架安全選用技術(shù)規(guī)程
- 水電消防安裝施工組織設(shè)計(jì)方案
- 醫(yī)院工作制度和人員崗位職責(zé)(衛(wèi)生部)
- 金屬非金屬露天礦山安全生產(chǎn)風(fēng)險(xiǎn)分級(jí)管控體系方案資料(2021-2022)
- 第二部分壓裂材料
- GB/T 10416-2007農(nóng)業(yè)機(jī)械環(huán)形變速V帶及帶輪輪槽截面
- 性健康教育課件
評(píng)論
0/150
提交評(píng)論