章利用數(shù)組處理批量數(shù)據(jù)_第1頁
章利用數(shù)組處理批量數(shù)據(jù)_第2頁
章利用數(shù)組處理批量數(shù)據(jù)_第3頁
章利用數(shù)組處理批量數(shù)據(jù)_第4頁
章利用數(shù)組處理批量數(shù)據(jù)_第5頁
已閱讀5頁,還剩92頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

6.1為什么要用數(shù)組6.2定義和引用一維數(shù)組6.3二維數(shù)組的定義和引用6.4字符數(shù)組6.5提高部分第6章利用數(shù)組處理批量數(shù)據(jù)P1396.1為什么要用數(shù)組P139前幾章使用的變量都屬于基本類型,例如整型、字符型、浮點(diǎn)型數(shù)據(jù),這些都是簡單的數(shù)據(jù)類型。對于有些數(shù)據(jù),只用簡單的數(shù)據(jù)類型是不夠的,難以反映出數(shù)據(jù)的特點(diǎn),也難以有效地進(jìn)行處理。6.1為什么要用數(shù)組P13930名學(xué)生成績,需要用30個(gè)變量100名學(xué)生成績,需要用多少個(gè)變量?用s1,s2,s3,……,s30表示成績,能體現(xiàn)內(nèi)在聯(lián)系C語言用方括號(hào)中的數(shù)字表示下標(biāo),如用s[15]表示數(shù)組名一組具有同一屬性的數(shù)據(jù)6.1為什么要用數(shù)組P139數(shù)組是一組有序數(shù)據(jù)的集合。數(shù)組中各數(shù)據(jù)的排列是有一定規(guī)律的,下標(biāo)代表數(shù)據(jù)在數(shù)組中的序號(hào)用一個(gè)數(shù)組名和下標(biāo)唯一確定數(shù)組中的元素?cái)?shù)組中的每一個(gè)元素都屬于同一個(gè)數(shù)據(jù)類型6.2定義和引用一維數(shù)組6.2.1定義一維數(shù)組6.2.2引用一維數(shù)組的元素6.2.3一維數(shù)組的初始化6.2.4一維數(shù)組程序舉例P1396.2.1定義一維數(shù)組一維數(shù)組是最簡單的數(shù)組數(shù)組元素只有1個(gè)下標(biāo)——一維數(shù)組數(shù)組元素2個(gè)下標(biāo)——二維數(shù)組P1406.2.1定義一維數(shù)組定義數(shù)組的方法與定義變量的方法類似所不同的是一次定義一批有關(guān)聯(lián)的變量在定義數(shù)組時(shí)需要指定這批變量的類型、數(shù)組名稱,數(shù)組中包含變量的個(gè)數(shù)。P1406.2.1定義一維數(shù)組如inta[10];數(shù)組名P1406.2.1定義一維數(shù)組如inta[10];數(shù)組長度P1406.2.1定義一維數(shù)組定義一維數(shù)組的方式為:

類型符

數(shù)組名[常量表達(dá)式];數(shù)組名的命名規(guī)則和變量名相同常量表達(dá)式給出元素的個(gè)數(shù)下標(biāo)從0開始,如inta[10];a[0],a[1],a[2],…,a[9]P1406.2.1定義一維數(shù)組定義一維數(shù)組的方式為:

類型符

數(shù)組名[常量表達(dá)式];數(shù)組名的命名規(guī)則和變量名相同常量表達(dá)式給出元素的個(gè)數(shù)下標(biāo)從0開始,如inta[10];a[0],a[1],a[2],…,a[9]intn;

scanf(″%d″,&n);inta[n];不合法P1406.2.2引用一維數(shù)組的元素必須先定義數(shù)組,才能引用數(shù)組中的元素只能逐個(gè)引用數(shù)組元素而不能一次引用整個(gè)數(shù)組中的全部元素P1406.2.2引用一維數(shù)組的元素P140引用數(shù)組元素的表示形式為:

數(shù)組名[下標(biāo)]a[0]=a[5]+a[2+1]-a[2*3]合法intn=5,a[10];a[n]=20;合法6.2.2引用一維數(shù)組的元素P140例6.1引用數(shù)組元素。利用循環(huán)給數(shù)組元素a[0]~a[9]賦值為0~9,然后按逆序輸出各元素的值。解題思路:先用循環(huán)給數(shù)組元素a[0]~a[9]賦值0~9,這樣,每個(gè)數(shù)組元素都有固定的值了,然后按a[9]到a[0]的順序輸出各元素的值。6.2.2引用一維數(shù)組的元素P140#include<stdio.h>voidmain(){inti,a[10];for(i=0;i<=9;i++)a[i]=i;for(i=9;i>=0;i--)printf("%d",a[i]);printf("\n");}使a[0]~a[9]的值為0~90123456789a[0]a[1]a[2]a[3]a[4]a[5]a[6]a[7]a[8]a[9]6.2.2引用一維數(shù)組的元素P140#include<stdio.h>voidmain(){inti,a[10];for(i=0;i<=9;i++)a[i]=i;for(i=9;i>=0;i--)printf("%d",a[i]);printf("\n");}先輸出a[9],最后輸出a[0]6.2.3一維數(shù)組的初始化對數(shù)組元素的賦值既可以通過賦值語句來實(shí)現(xiàn),也可以在定義數(shù)組時(shí)同時(shí)給予初值,這就稱為數(shù)組的初始化P141(1)定義數(shù)組時(shí)對全部數(shù)組元素賦初值inta[10]={0,1,2,3,4,5,6,7,8,9};(2)可以只給一部分元素賦值inta[10]={0,1,2,3,4};相當(dāng)于inta[10]={0,1,2,3,4,0,0,0,0,0};(3)

inta[5]={1,2,3,4,5};可寫為inta[]={1,2,3,4,5};6.2.4一維數(shù)組程序舉例

例6.2用數(shù)組來處理求Fibonacci數(shù)列問題。Fibonacci數(shù)列問題的含義見例5.8。P142解題思路:建立一個(gè)數(shù)組,將數(shù)列中第1個(gè)數(shù)放在數(shù)組第1個(gè)元素中,數(shù)列第2個(gè)數(shù)放在數(shù)組第2個(gè)元素中,…數(shù)組序號(hào)為i的元素的值是其前兩個(gè)元素值之和。即:

f[i]=f[i-2]+f[i-1]用循環(huán)來求出數(shù)組各元素之和#include<stdio.h>voidmain(){inti;intf[20]={1,1};for(i=2;i<20;i++)f[i]=f[i-2]+f[i-1];for(i=0;i<20;i++){if(i%5==0)printf("\n”);printf("%12d",f[i]);}printf("\n");}f[0]和f[1]的值1,1求f[2]和f[19]的值每行輸出5個(gè)11235813213455891442333776109871597258441816765例5.8程序在順序求出并輸出各個(gè)數(shù)后,不能保存這些數(shù)據(jù),如果要單獨(dú)輸出第10個(gè)數(shù),是比較困難的本例用數(shù)組處理時(shí),把每個(gè)數(shù)據(jù)都保存在各數(shù)組元素中,如果要單獨(dú)輸出第10個(gè)數(shù),是很容易的,直接輸出f[9]即可

例6.3假如有n個(gè)人,各人年齡不同,希望按年齡將他們從小到大排列。解題思路:排序的規(guī)律有兩種:一種是“升序”,從小到大;另一種是“降序”,從大到小把題目抽象為:“對n個(gè)數(shù)按升序排序”采用起泡法排序985420895420859420854920854290854209大數(shù)沉淀,小數(shù)起泡a[0]a[1]a[2]a[3]a[4]a[5]for(i=0;i<5;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}854209584209548209542809542089a[0]a[1]a[2]a[3]a[4]a[5]for(i=0;i<4;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}542089452089425089420589a[0]a[1]a[2]a[3]a[4]a[5]for(i=0;i<3;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}420589240589204589a[0]a[1]a[2]a[3]a[4]a[5]for(i=0;i<2;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}204589024589a[0]a[1]a[2]a[3]a[4]a[5]for(i=0;i<1;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}for(i=0;i<5;i++)if(a[i]>a[i+1]){……}for(i=0;i<4;i++)if(a[i]>a[i+1]){……}for(i=0;i<1;i++)if(a[i]>a[i+1]){……}……for(i=0;i<5-j;i++)if(a[i]>a[i+1]){……}for(j=0;j<5;j++)inta[10];inti,j,t;printf("input10numbers:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);printf("\n");for(j=0;j<9;j++) for(i=0;i<9-j;i++) if(a[i]>a[i+1]) {t=a[i];a[i]=a[i+1];a[i+1]=t;}printf("thesortednumbers:\n");for(i=0;i<10;i++)printf("%d",a[i]);printf("\n");input10numbers:

1320647821814304523↙thesortednumbers:

81314202123304564786.3二維數(shù)組的定義和引用P1456.3.1定義二維數(shù)組6.3.2引用二維數(shù)組的元素6.3.3二維數(shù)組的初始化6.3.4二維數(shù)組程序舉例6.3.1定義二維數(shù)組floata[3][4],b[5][10];定義a為3×4(3行4列)的數(shù)組b為5×10(5行10列)的數(shù)組二維數(shù)組定義的一般形式為

類型符數(shù)組名[常量表達(dá)式][常量表達(dá)式];P1456.3.1定義二維數(shù)組P145a[0][0]a[0][1]a[0][2]a[0][3]a[1][0]a[1][1]a[1][2]a[1][3]a[2][0]a[2][1]a[2][2]a[2][3]邏輯存儲(chǔ)內(nèi)存中的存儲(chǔ)順序6.3.2引用二維數(shù)組的元素P146二維數(shù)組元素的表示形式為:

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

b[1][2]=a[2][3]/2合法inta[3][4];

a[3][4]=3;不合法6.3.3二維數(shù)組的初始化P147inta[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};inta[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};inta[3][4]={{1},{5},{9}};等價(jià)于inta[3][4]={{1,0,0,0},{5,0,0,0},{9,0,0,0}};inta[3][4]={{1},{5,6}};相當(dāng)于inta[3][4]={{1},{5,6},{0}};6.3.3二維數(shù)組的初始化P147inta[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};等價(jià)于:inta[][4]={1,2,3,4,5,6,7,8,9,10,11,12};inta[][4]={{0,0,3},{},{0,10}};合法6.3.4二維數(shù)組程序舉例P148

例6.4將一個(gè)二維數(shù)組a的行和列的元素互換,存到另一個(gè)二維數(shù)組b中。6.3.4二維數(shù)組程序舉例P148編程思路:將a數(shù)組中第i行j列元素賦給b數(shù)組中j行i列元素

例如a[0][0]賦給b[0][0]a[0][1]賦給b[1][0]a[0][2]賦給b[2][0],……可以用雙層循環(huán)來處理,用外循環(huán)控制行的變化,內(nèi)循環(huán)控制列的變化#include<stdio.h>voidmain(){inta[2][3]={{1,2,3},{4,5,6}};intb[3][2],i,j;printf("arraya:\n");for(i=0;i<2;i++){for(j=0;j<3;j++){printf("%5d",a[i][j]);b[j][i]=a[i][j];}printf("\n");}i控制行數(shù)的變化j控制列數(shù)的變化輸出a的各元素a元素值賦給b相應(yīng)元素printf("arrayb:\n");for(i=0;i<3;i++){for(j=0;j<2;j++)printf("%5d",b[i][j]);printf("\n");}}輸出b的各元素arraya:

123

456

arrayb:

14

25

36

例6.5有一個(gè)班30個(gè)學(xué)生,己知每個(gè)學(xué)生有5門課的成績,要求輸出平均成績最高的學(xué)生的成績以及該學(xué)生的序號(hào)。解題思路:用二維數(shù)組,行代表學(xué)生,列代表一門課的成績要存放30個(gè)學(xué)生5門課的成績和平均成績,數(shù)組的大小應(yīng)該是30×6inti,j,max_i;floatsum,max=0;floats[5][6]={{78,82,93,74,65},{91,82,72,76,67},{100,90,85,72,98},{67,89,90,65,78},{77,88,99,45,89},};

第6列默認(rèn)為0假設(shè)5個(gè)學(xué)生for(i=0;i<5;i++){sum=0;for(j=0;j<5;j++)sum=sum+s[i][j];s[i][5]=sum/5;}輸出最高的平均分,和該學(xué)生的序號(hào)找出最高的平均分和該學(xué)生的序號(hào)求每人平均成績,放在數(shù)組每一行的最后一列中for(i=0;i<5;i++)if(s[i][5]>max){max=s[i][5];max_i=i;}printf(“stu_order=%d\n”,max_i);printf(“max=%7.2f\n”,max);stu_order=2

max=89.00注意位置打擂臺(tái)算法6.4字符數(shù)組6.4.1定義字符數(shù)組及對其初始化6.4.2引用字符數(shù)組6.4.3字符串和字符串結(jié)束標(biāo)志6.4.4字符數(shù)組的輸入輸出6.4.5字符串處理函數(shù)6.4.6字符數(shù)組應(yīng)用舉例P1516.4.1定義字符數(shù)組及對其初始化P151用來存放字符數(shù)據(jù)的數(shù)組是字符數(shù)組字符數(shù)組中的一個(gè)元素存放一個(gè)字符定義字符數(shù)組的方法與定義數(shù)值型數(shù)組的方法類似6.4.1定義字符數(shù)組及對其初始化P151charc[10];c[0]=’I’;c[1]=’’;c[2]=’a’;c[3]=’m’;c[4]=’’;c[5]=’h’;c[6]=’a’;c[7]=’p’;c[8]=’p’;c[9]=’y’;Iam

happyc[0]c[1]c[2]c[3]c[4]c[5]c[6]c[7]c[8]c[9]6.4.1定義字符數(shù)組及對其初始化P151charc[10]={’I’,’’,’a’,’m’,’’,’h’,’a’,’p’,’p’,’y’};charc[10]={’c’,’’,’p’,’r’,’o’,’g’,’r’,’a’,’m’};Iam

happyc[0]c[1]c[2]c[3]c[4]c[5]c[6]c[7]c[8]c[9]cprogram\0c[0]c[1]c[2]c[3]c[4]c[5]c[6]c[7]c[8]c[9]6.4.1定義字符數(shù)組及對其初始化P151chardiamond[5][5]={{’’,’’,’*’},{’’,’*’,’’,’*’},{’*’,’’,’’,’’,’*’},{’’,’*’,’’,’*’},{’’,’’,’*’}};6.4.2引用字符數(shù)組例6.6輸出一個(gè)菱形圖。P152#include<stdio.h>voidmain(){chardiamond[][5]={{'','','*'},{'','*','','*'},{'*','','','','*'},{‘’,‘*’,‘’,‘*’},{‘’,‘’,‘*’}};inti,j;for(i=0;i<5;i++){for(j=0;j<5;j++)printf(“%c”,diamond[i][j]);printf("\n");}}6.4.3字符串和字符串結(jié)束標(biāo)志P153在C語言中,是將字符串作為字符數(shù)組來處理的關(guān)心的是字符串的有效長度而不是字符數(shù)組的長度為了測定字符串的實(shí)際長度,C語言規(guī)定了字符串結(jié)束標(biāo)志’\0’6.4.3字符串和字符串結(jié)束標(biāo)志P153’\0’代表ASCII碼為0的字符從ASCII碼表可以查到,ASCII碼為0的字符不是一個(gè)可以顯示的字符,而是一個(gè)“空操作符”,即它什么也不做用它作為字符串結(jié)束標(biāo)志不會(huì)產(chǎn)生附加的操作或增加有效字符,只起一個(gè)供辨別的標(biāo)志6.4.3字符串和字符串結(jié)束標(biāo)志P153charc[]={”Iamhappy”};可寫成charc[]=”Iamhappy”;相當(dāng)于charc[11]={”Iamhappy”};6.4.3字符串和字符串結(jié)束標(biāo)志P153charc[10]={”China”};可寫成charc[10]=”China”;從c[5]開始,元素值均為\0China\0\0\0\0\06.4.4字符數(shù)組的輸入輸出字符數(shù)組的輸入輸出可以有兩種方法:

逐個(gè)字符輸入輸出(%c)

整個(gè)字符串一次輸入輸出(%s)P155charc[]=”China”;printf(”%s”,c);China\06.4.4字符數(shù)組的輸入輸出在使用字符串輸入輸出時(shí)要注意有關(guān)規(guī)定,否則容易出錯(cuò)。輸出字符不包括結(jié)束符’\0’

printf(”%s”,c);P155字符數(shù)組名

charc[10]=”China”;printf(”%s”,c);China

&c不合法

6.4.4字符數(shù)組的輸入輸出在使用字符串輸入輸出時(shí)要注意有關(guān)規(guī)定,否則容易出錯(cuò)。輸出字符不包括結(jié)束符’\0’

printf(”%s”,c);P155charc[10]=”boy\0girl\0”;printf(”%s”,c);boy

6.4.4字符數(shù)組的輸入輸出在使用字符串輸入輸出時(shí)要注意有關(guān)規(guī)定,否則容易出錯(cuò)。輸出字符不包括結(jié)束符’\0’

printf(”%s”,c);P155charc[6];scanf(”%s”,c);

China↙

合法abcdef↙不合法6.4.4字符數(shù)組的輸入輸出在使用字符串輸入輸出時(shí)要注意有關(guān)規(guī)定,否則容易出錯(cuò)。輸出字符不包括結(jié)束符’\0’

printf(”%s”,c);P155charstr[13];scanf(”%s”,str);

Howareyou↙H0w\0\0\0\0\0\0\0\0\0\0\06.4.4字符數(shù)組的輸入輸出在使用字符串輸入輸出時(shí)要注意有關(guān)規(guī)定,否則容易出錯(cuò)。輸出字符不包括結(jié)束符’\0’

printf(”%d”,c);P155數(shù)組c的起始地址6.4.5字符串處理函數(shù)在程序中往往需要對字符串作某些操作處理,兩個(gè)字符串連接、兩個(gè)字符串進(jìn)行比較等在C函數(shù)庫中提供了一些字符串處理函數(shù),使用很方便P157函數(shù)形式功能gets(字符數(shù)組)從終端輸入一個(gè)字符串到字符數(shù)組puts(字符數(shù)組)將一個(gè)字符串(以’\0’結(jié)束的字符序列)輸出到終端strcat(字符數(shù)組1,字符數(shù)組2)連接兩個(gè)字符數(shù)組中的字符串把字符串2接到字符串1的后面strcpy(字符數(shù)組1,字符串2)將字符串2復(fù)制到字符數(shù)組1中去strcmp(字符串1,字符串2)比較串1和串2。若串1=串2,則函數(shù)值為0;若串1>串2,則函數(shù)值為一個(gè)正整數(shù);若串1<串2,則函數(shù)值為一個(gè)負(fù)整數(shù)strlen(字符數(shù)組)測試字符串長度strlwr(字符串)將字符串中大寫字母換成小寫字母strupr(字符串)將字符串中小寫字母換成大寫字母6.4.6字符數(shù)組應(yīng)用舉例例6.7有3個(gè)字符串,要求找出其中“最大”者。P157解題思路:按英文字典的排列,后面出現(xiàn)的串大要求處理3個(gè)字符串,需要定義一個(gè)二維的字符數(shù)組假定每個(gè)字符串不超過19個(gè)字符,則可定義二維的大小為3×20China\0\0\0…\0str[0]Japan\0\0\0…\0str[1]India\0\0\0…\0str[2]可以把str[0],str[1],str[2]看作3個(gè)一維字符數(shù)組它們各有20個(gè)元素可以把它們?nèi)缤痪S數(shù)組那樣進(jìn)行處理#include<stdio.h>#include<string.h>voidmain(){charstring[20],str[3][20];inti;for(i=0;i<3;i++)gets(str[i]);if(strcmp(str[0],str[1])>0)

strcpy(string,str[0]);elsestrcpy(string,str[1]);if(strcmp(str[2],string)>0)

strcpy(string,str[2]);printf(“Thelargeststringis:\n%s\n”,string);}用字符串函數(shù)時(shí)加#include<stdio.h>#include<string.h>voidmain(){charstring[20],str[3][20];inti;for(i=0;i<3;i++)gets(str[i]);if(strcmp(str[0],str[1])>0)

strcpy(string,str[0]);elsestrcpy(string,str[1]);if(strcmp(str[2],string)>0)

strcpy(string,str[2]);printf(“Thelargeststringis:\n%s\n”,string);}讀入3個(gè)串#include<stdio.h>#include<string.h>voidmain(){charstring[20],str[3][20];inti;for(i=0;i<3;i++)gets(str[i]);if(strcmp(str[0],str[1])>0)

strcpy(string,str[0]);elsestrcpy(string,str[1]);if(strcmp(str[2],string)>0)

strcpy(string,str[2]);printf(“Thelargeststringis:\n%s\n”,string);}找串1和串2中較大者#include<stdio.h>#include<string.h>voidmain(){charstring[20],str[3][20];inti;for(i=0;i<3;i++)gets(str[i]);if(strcmp(str[0],str[1])>0)

strcpy(string,str[0]);elsestrcpy(string,str[1]);if(strcmp(str[2],string)>0)

strcpy(string,str[2]);printf(“Thelargeststringis:\n%s\n”,string);}找三個(gè)串中最大者CHINA↙

HOLLAND↙

AMERICA↙

Thelargeststringis:HOLLAND例6.8輸入一行字符,統(tǒng)計(jì)其中有多少個(gè)單詞,單詞之間用空格分隔開。解題思路:通過空格統(tǒng)計(jì)單詞:由空格出現(xiàn)的次數(shù)(連續(xù)的空格作為一次空格;一行開頭的空格不統(tǒng)計(jì)在內(nèi))決定單詞數(shù)目從第一個(gè)字符開始逐個(gè)檢查是否為空格例6.8輸入一行字符,統(tǒng)計(jì)其中有多少個(gè)單詞,單詞之間用空格分隔開。解題思路:(1)如測出某字符為非空格,而它前面的字符是空格,則表示“新的單詞開始”。設(shè)變量num,用來累計(jì)單詞數(shù),初值為0。當(dāng)發(fā)現(xiàn)“新的單詞開始”,使num累加1,表示增加一個(gè)單詞例6.8輸入一行字符,統(tǒng)計(jì)其中有多少個(gè)單詞,單詞之間用空格分隔開。解題思路:(2)如果當(dāng)前字符為非空格而其前面的字符也是非空格,則意味著仍然是原來那個(gè)單詞的繼續(xù),num不應(yīng)再累加1設(shè)變量word,用來表示前一個(gè)字符是否空格,以0代表前一個(gè)字符是空格;word等于1,意味著前一個(gè)字符為非空格,word的初值置為0Yc=空格word=0Nword=0Yword=1num++Nif(c=='')word=0;elseif(word==0){word=1;num++;}當(dāng)前字符Iamaboy.是否空格否是否否是否是否否否否word原值01011010111新單詞開始否是否是否否是否是否否否word新值10110101111num值11222334444#include<stdio.h>voidmain(){charstring[81];inti,num=0,word=0;charc;gets(string);for(i=0;(c=string[i])!=‘\0’;i++)if(c==‘’)word=0;elseif(word==0){num++;word=1;

}printf(“Thereare%dwordsinthisline.\n”,num);}一定要設(shè)初始值#include<stdio.h>voidmain(){charstring[81];inti,num=0,word=0;charc;gets(string);for(i=0;(c=string[i])!=‘\0’;i++)if(c==‘’)word=0;elseif(word==0){num++;word=1;

}printf(“Thereare%dwordsinthisline.\n”,num);}相當(dāng)于c=string[i];c!=‘\0’Iamaboy.↙

Thereare4wordsinthisline.6.5提高部分6.5.1定義二維數(shù)組時(shí)為何采用兩對雙括號(hào)形式6.5.2C語言字符串函數(shù)的詳細(xì)說明P1616.5.1定義二維數(shù)組時(shí)為何采用兩對雙括號(hào)形式如inta[3][4];好處是:使二維數(shù)組可被看作是一種特殊的一維數(shù)組:它由3個(gè)一維數(shù)組組成。例如,a是一個(gè)二維數(shù)組,可以把它看作是一個(gè)一維數(shù)組,它包括3個(gè)元素:a[0]、a[1]、a[2],每個(gè)元素又是一個(gè)包含4個(gè)元素的一維數(shù)組P161a[0][0]a[0][1]a[0][2]a[0][3]a[1][0]a[1][1]a[1][2]a[1][3]a[2][0]a[2][1]a[2][2]a[2][3]a[0]a[1]a[2]charstr[3][20];scanf(“%s”.str[0]);合法printf(“%s\n”.str[0]);合法比較str[0]和str[1]合法6.5.2C語言字符串函數(shù)的詳細(xì)說明P1621.gets函數(shù)(讀入字符串函數(shù))其一般形式為:gets(字符數(shù)組)作用是輸入一個(gè)字符串到字符數(shù)組gets(str);

Computer↙2.puts函數(shù)(輸出字符串函數(shù))其一般形式為:puts(字符數(shù)組)作用是將一個(gè)字符串輸出到終端charstr[20]=”China”;puts(str);

輸出China2.puts函數(shù)(輸出字符串函數(shù))其一般形式為:puts(字符數(shù)組)作用是將一個(gè)字符串輸出到終端charstr[]=″China\nBeijing″;

puts(str);

輸出China

Beijing3.strcat函數(shù)(字符串連接函數(shù))其一般形式為:strcat(字符數(shù)組1,字符數(shù)組2)其作用是把兩個(gè)字符串連接起來,把字符串2接到字符串1的后面,結(jié)果放在字符數(shù)組1中使用字符串函數(shù)時(shí),在程序開頭用#include<string.h>3.strcat函數(shù)(字符串連接函數(shù))char

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論