![C語言程序設(shè)計第9章數(shù)組配套教材高等教育出版社清華大學(xué)出版社_第1頁](http://file4.renrendoc.com/view/2d6b25037aaab925419f144acd526af6/2d6b25037aaab925419f144acd526af61.gif)
![C語言程序設(shè)計第9章數(shù)組配套教材高等教育出版社清華大學(xué)出版社_第2頁](http://file4.renrendoc.com/view/2d6b25037aaab925419f144acd526af6/2d6b25037aaab925419f144acd526af62.gif)
![C語言程序設(shè)計第9章數(shù)組配套教材高等教育出版社清華大學(xué)出版社_第3頁](http://file4.renrendoc.com/view/2d6b25037aaab925419f144acd526af6/2d6b25037aaab925419f144acd526af63.gif)
![C語言程序設(shè)計第9章數(shù)組配套教材高等教育出版社清華大學(xué)出版社_第4頁](http://file4.renrendoc.com/view/2d6b25037aaab925419f144acd526af6/2d6b25037aaab925419f144acd526af64.gif)
![C語言程序設(shè)計第9章數(shù)組配套教材高等教育出版社清華大學(xué)出版社_第5頁](http://file4.renrendoc.com/view/2d6b25037aaab925419f144acd526af6/2d6b25037aaab925419f144acd526af65.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
第9章數(shù)組2023/2/43:15前幾章使用的變量都屬于基本類型,例如整型、字符型、浮點型數(shù)據(jù),這些都是簡單的數(shù)據(jù)類型。對于有些數(shù)據(jù),只用簡單的數(shù)據(jù)類型是不夠的,難以反映出數(shù)據(jù)的特點,也難以有效地進行處理。2023/2/43:15如果有1000名學(xué)生,每個學(xué)生有一個成績,需要求這1000名學(xué)生的平均成績。用s1,s2,s3,……,s1000表示每個學(xué)生的成績,能體現(xiàn)內(nèi)在聯(lián)系。C語言用方括號中的數(shù)字表示下標(biāo),如用s[15]表示數(shù)組名2023/2/43:15數(shù)組是一組有序數(shù)據(jù)的集合。數(shù)組中各數(shù)據(jù)的排列是有一定規(guī)律的,下標(biāo)代表數(shù)據(jù)在數(shù)組中的序號用一個數(shù)組名和下標(biāo)唯一確定數(shù)組中的元素數(shù)組中的每一個元素都屬于同一個數(shù)據(jù)類型2023/2/43:159.1一維數(shù)組的定義和一維數(shù)組元素的引用9.2一維數(shù)組和指針9.3函數(shù)之間對一維數(shù)組和數(shù)組元素的引用9.4一維數(shù)組應(yīng)用舉例9.5二維數(shù)組的定義和二維數(shù)組元素的引用9.6二維數(shù)組和指針9.7二維數(shù)組名和指針數(shù)組作為實參9.8二維數(shù)組程序舉例2023/2/43:159.1一維數(shù)組的定義和一維數(shù)組元素的引用9.1.1一維數(shù)組的定義9.1.2一維數(shù)組元素的引用9.1.3一維數(shù)組的初始化9.1.4通過賦初值定義數(shù)組的大小9.1.5一維數(shù)組的定義和數(shù)組元素引用舉例2023/2/43:159.1.1一維數(shù)組的定義一維數(shù)組是數(shù)組中最簡單的它的元素只需要用數(shù)組名加一個下標(biāo),就能唯一確定要使用數(shù)組,必須在程序中先定義數(shù)組2023/2/43:159.1.1一維數(shù)組的定義定義一維數(shù)組的一般形式為:
類型符
數(shù)組名[常量表達式];數(shù)組名的命名規(guī)則和變量名相同如inta[10];數(shù)組名2023/2/43:159.1.1一維數(shù)組的定義定義一維數(shù)組的一般形式為:
類型符
數(shù)組名[常量表達式];數(shù)組名的命名規(guī)則和變量名相同如inta[10];數(shù)組長度2023/2/43:159.1.1一維數(shù)組的定義定義一維數(shù)組的一般形式為:
類型符
數(shù)組名[常量表達式];數(shù)組名的命名規(guī)則和變量名相同如inta[10];10個元素:a[0],a[1],a[2],…,a[9]每個元素的數(shù)據(jù)類型a[0]a[1]a[2]a[3]…a[7]a[8]a[9]2023/2/43:159.1.1一維數(shù)組的定義定義一維數(shù)組的一般形式為:
類型符
數(shù)組名[常量表達式];inta[4+6];合法intn=10;inta[n];不合法2023/2/43:15下列定義數(shù)組的語句中,正確的是()
A#defineN10 BintN=10; intx[N]; intx[N]; Cintx[0..10]; Dintx[];
參考答案:A【解析】數(shù)組說明的一般形式為:類型說明符數(shù)組名[常量表達式]。B)中N是變量,不能用變量定義數(shù)組長度。C)選項中數(shù)組長度是非法的一串?dāng)?shù)字。定義數(shù)組時必須為其指明長度,D)選項中數(shù)組長度為空,所以非法。2023/2/43:15以下選項中敘述正確的是()
Acharc1,c2,*c3,c4[40];是合法的變量定義語句 B數(shù)組說明符的一對方括號中只能使用整型常量,而不能使用表達式 C數(shù)組下標(biāo)的下限可以是負(fù)值 D若有數(shù)組定義floatarray[4];則語句printf("%f",array[3.12]);是合法的 參考答案:A【解析】A選項正確定義了字符變量c1、c2,字符型指針c3,字符型一維數(shù)組c4[40],A選項正確。"[]"是下標(biāo)運算符,"下標(biāo)"可以是任何非負(fù)整型數(shù)據(jù),取值范圍是0~(數(shù)據(jù)元素的個數(shù)-1)。在引用數(shù)組元素時,下標(biāo)運算符內(nèi)可以是常量也可以是變量或者表達式,B選項錯誤。數(shù)組下標(biāo)的下限不可以是負(fù)值,C選項錯誤。數(shù)組下標(biāo)必須是整型數(shù)據(jù),3.12為浮點數(shù),D選項錯誤。2023/2/43:15以下敘述中正確的是() A一條語句只能定義一個數(shù)組
B每個數(shù)組包含一組具有同類型的變量,這些變量在內(nèi)存中占有連續(xù)的存儲單元 C數(shù)組說明符的一對方括號中只能使用整型常量,而不能使用表達式 D在引用數(shù)組元素時,下標(biāo)表達式可以使用浮點數(shù)
參考答案:B【解析】A選項中,一條語句只能定義一個數(shù)組是不準(zhǔn)確的,可以通過一條語句定義多個數(shù)組;C選項中,數(shù)組說明符的一對方括號中可以是整型常量,可以是整型常量表達式;D選項中,在引用數(shù)組元素時,下標(biāo)表達式必須是整型的。因此B選項正確。2023/2/43:159.1.2一維數(shù)組元素的引用在定義數(shù)組并對其中各元素賦值后,就可以引用數(shù)組中的元素注意:只能引用數(shù)組元素而不能一次整體調(diào)用整個數(shù)組全部元素的值2023/2/43:159.1.2一維數(shù)組元素的引用引用數(shù)組元素的表示形式為:
數(shù)組名[下標(biāo)]如a[0]=a[5]+a[7]-a[2*3]合法intn=5,a[10];a[n]=20;合法2023/2/43:15數(shù)組名可以認(rèn)為是一個存放地址值的指針變量名,其中的地址值是數(shù)組第一個元素的地址,也就是數(shù)組所占一串連續(xù)存儲單元的起始地址這個指針變量的地址值不可改變,即不可以給數(shù)組名重新賦值,因此可以認(rèn)為數(shù)組名是一個地址常量2023/2/43:15若有以下定義:floata[10],*p,x;(*p表示p是一個指針,即變量p在內(nèi)存中的存儲空間的地址)那么語句a=&x;或a++;都是非法的,因為不能給a重新賦值;引用數(shù)組名a就表示訪問數(shù)組的第一個元素即a[0]的地址;或者用a+k(k為整數(shù))來訪問數(shù)組a中的第k+1個元素,都是合法的。如:p=a+k;等價于p=&a[k];
x=*(a+k);等價于x=a[k];
scanf(“%f”,a);等價于scanf(“%f”,&a[0]);2023/2/43:15以下程序中給數(shù)組所有元素輸入數(shù)據(jù),請從選項中選擇正確的答案填入下劃線處#include<stdio.h>main(){inta[10],i=0;while(i<10)scanf("%d",_________);
┋}A)a+(i++)B)&a[i+1]C)a+iD)&a(i++)
參考答案:A【解析】A選項a為數(shù)組首地址,i++先取i值再加1,scanf讀入的數(shù)據(jù)依次存放在數(shù)組中,A選項正確。B選項,第一個數(shù)據(jù)讀入a[1],最后一次循環(huán)引用a[10],數(shù)組越界,B選項錯誤。C選項,控制變量i沒有依次加1,無法結(jié)束循環(huán),也無法對整個數(shù)組賦值,輸入的數(shù)全是a[0],C選項錯誤。D選項數(shù)組元素引用錯誤,數(shù)組元素引用為[],不是(),D選項錯誤。2023/2/43:159.1.3一維數(shù)組的初始化在定義數(shù)組的同時,給各數(shù)組元素賦值inta[10]={0,1,2,3,4,5,6,7,8,9};inta[10]={0,1,2,3,4};相當(dāng)于inta[10]={0,1,2,3,4,0,0,0,0,0};inta[10]={0,0,0,0,0,0,0,0,0,0};相當(dāng)于inta[10]={0};inta[5]={1,2,3,4,5};可寫為inta[]={1,2,3,4,5};2023/2/43:15一維數(shù)組初始化的方法inta[5];1.直接對每個數(shù)組元素賦值,如a[5]={1,2,3,4,5}2.用循環(huán)給每一個數(shù)組元素賦值,for(i=0;i<5;i++)
a[i]=i;或a[i]=2*i+1;
或a[i]=(int)rand()%100;生成1~100的隨機整數(shù)賦值給數(shù)組元素2023/2/43:15有以下程序 #include<stdio.h> main()
{inta[3]={0},i,j,k=2; for(i=0;i<k;i++) for(j=0;j<k;j++)a[j]=a[i]+1; printf("%d\n",a[1]);}程序運行后的輸出結(jié)果是() A0 B2 C1 D3
參考答案:D【解析】該題首先初始化一維數(shù)組a[3]所有元素都為0;執(zhí)行嵌套循環(huán)for語句,當(dāng)i=0、j=0時,a[0]=a[0]+1=1;當(dāng)i=0、j=1時,a[1]=a[0]+1=2;當(dāng)i=1、j=0時,a[0]=a[1]+1=3;當(dāng)i=1、j=1時,a[1]=a[1]+1=3;因此D選項正確。2023/2/43:15若有以下程序 #include<stdio.h> voidfun(inta[],intn)
{intt,i,j; for(i=1;i<n;i+=2) for(j=i+2;j<n;j+=2) if(a[i]>a[j]){t=a[i];a[i]=a[j];a[j]=t;}} main()
{intc[10]={10,9,8,7,6,5,4,3,2,1},i; fun(c,10); for(i=0;i<10;i++)printf("%d,",c[i]); printf("\n");}則程序的輸出結(jié)果是() A1,10,3,8,5,6,7,4,9,2, B10,9,8,7,6,5,4,3,2,1, C2,9,4,7,6,5,8,3,10,1, D10,1,8,3,6,5,4,7,2,9, 參考答案:D2023/2/43:15以下函數(shù)實現(xiàn)按每行8個輸出w所指數(shù)組中的數(shù)據(jù) #include<stdio.h> voidfun(int*w,intn) { inti; for(i=0;i<n;i++)
{______________
printf("%d",w[i]);} printf("\n"); }在橫線處應(yīng)填入的語句是() Aif(i/8==0)printf("\n"); Bif(i/8==0)continue;
Cif(i%8==0)printf("\n");Dif(i%8==0)continue;
參考答案:C【解析】要按照每行8個輸出數(shù)據(jù)的話,橫線處語句的功能應(yīng)該為:當(dāng)i是8的倍數(shù)時(i%8==0),輸出一個換行符。因此C選項正確。2023/2/43:159.1.5一維數(shù)組的定義和數(shù)組元素引用舉例
例9.1對10個數(shù)組元素依次賦值為0,1,2,3,4,5,6,7,8,9,要求按逆序輸出。解題思路:定義一個長度為10的數(shù)組,數(shù)組定義為整型要賦的值是從0到9,可以用循環(huán)來賦值用循環(huán)按下標(biāo)從大到小輸出這10個元素2023/2/43:15#include<stdio.h>intmain(){inti,a[10];for(i=0;i<=9;i++)a[i]=i;for(i=9;i>=0;i--)printf("%d",a[i]);printf("\n");return0;}使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]2023/2/43:15#include<stdio.h>intmain(){inti,a[10];for(i=0;i<=9;i++)a[i]=i;for(i=9;i>=0;i--)printf("%d",a[i]);printf("\n");return0;}先輸出a[9],最后輸出a[0]0123456789a[0]a[1]a[2]a[3]a[4]a[5]a[6]a[7]a[8]a[9]2023/2/43:159.1.5一維數(shù)組的定義和數(shù)組元素引用舉例
例9.2用數(shù)組處理求Fibonacci數(shù)列問題解題思路:以前的例子中是用簡單變量處理的,缺點不能在內(nèi)存中保存這些數(shù)。假如想直接輸出數(shù)列中第25個數(shù),是很困難的。如果用數(shù)組處理,每一個數(shù)組元素代表數(shù)列中的一個數(shù),依次求出各數(shù)并存放在相應(yīng)的數(shù)組元素中2023/2/43:15#include<stdio.h>intmain(){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");return0;}2023/2/43:15
例9.3有10個地區(qū)的面積,要求對它們按由小到大的順序排列。解題思路:排序的規(guī)律有兩種:一種是“升序”,從小到大;另一種是“降序”,從大到小把題目抽象為:“對n個數(shù)按升序排序”采用起泡法排序2023/2/43:15985420895420859420854920854290854209大數(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;}2023/2/43:15854209584209548209542809542089a[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;}2023/2/43:15542089452089425089420589a[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;}2023/2/43:15420589240589204589a[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;}2023/2/43:15204589024589a[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;}2023/2/43:15for(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++)2023/2/43:15inta[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");2023/2/43:15例:編寫程序,定義一個含有30個元素的int類型數(shù)據(jù)。依次給數(shù)組元素賦奇數(shù)1、3、5、……,然后按照每行10個數(shù)順序輸出,最后再按每行10個數(shù)逆序輸出。
ints[30],i,k=1; for(i=0;i<30;i++)
{s[i]=k;k+=2;}//給每個數(shù)組元素賦值 printf("順序輸出:\n"); for(i=0;i<30;i++)
{printf(“%4d”,s[i]);
if((i+1)%10==0)//每輸出10個數(shù)時輸出一個回車
printf("\n");} printf("逆序輸出:\n"); for(i=30-1;i>=0;i--) printf("%3d%c",s[i],(i%10==0)?'\n':''); printf("\n");2023/2/43:15設(shè)有n個數(shù)按從大到小的順序存放在數(shù)組x中,以下能使這n個數(shù)在x數(shù)組中的順序變?yōu)閺男〉酱蟮氖?)
Afor(i=0;i<n/2;i++) Bfor(i=0;i<n;i++) {t=x[i]; {t=x[i]; x[i]=x[n-i-1]; x[i]=x[n-i-1]; x[n-i-1]=t;}
x[n-i-1]=t;
}
Cfor(i=0;i<n/2;i++) Dfor(i=0;i<n/2;i+=2) {t=x[i]; {t=x[i]; x[i]=x[n-i+1]; x[i]=x[n-i-1]; x[n-i+1]=t;} x[n-i-1]=t;}
參考答案:A2023/2/43:15有以下程序 #include<stdio.h> main() { inti,s=0,t[]={1,2,3,4,5,6,7,8,9}; for(i=0;i<9;i+=2)s+=*(t+i); printf("%d\n",s);
}程序執(zhí)行后的輸出結(jié)果是() A20 B25 C45 D36 參考答案:B【解析】統(tǒng)計1~9九個數(shù)中的奇數(shù)和,此題考察指向數(shù)組的指針。C語言規(guī)定數(shù)組名代表數(shù)組的首地址,也就是第一個元素的地址。因此*(t+i)代表數(shù)組的第i+1個元素。程序運行的結(jié)果是1+3+5+7+9=25。2023/2/43:15有以下程序#include<stdio.h>main(){
ints[12]={1,2,3,4,4,3,2,1,1,1,2,3},c[5]={0},i;for(i=0;i<12;i++)c[s[i]]++;for(i=1;i<5;i++)printf("%d",c[i]);printf("\n");}
程序的運行結(jié)果是A)2344B)4332C)1234D)1123參考答案:B【解析】在for(i=0;i<12;i++)c[s[i]]++中,數(shù)組元素s[i]的值作為數(shù)組c的下標(biāo),當(dāng)退出循環(huán)時,數(shù)組c的4個元素的值分別為4、3、3、2。因此B選項正確。2023/2/43:15有以下程序#include<stdio.h>main(){inta[3]={0},i,j,k=2;for(i=0;i<k;i++)for(j=0;j<k;j++)a[j]=a[i]+1;printf("%d\n",a[1]);}程序運行后的輸出結(jié)果是A)0B)2C)1D)
3參考答案:D【解析】該題首先初始化一維數(shù)組a[3]所有元素都為0;執(zhí)行嵌套循環(huán)for語句,當(dāng)i=0、j=0時,a[0]=a[0]+1=1;當(dāng)i=0、j=1時,a[1]=a[0]+1=2;當(dāng)i=1、j=0時,a[0]=a[1]+1=3;當(dāng)i=1、j=1時,a[1]=a[1]+1=3;因此D選項正確。2023/2/43:159.2一維數(shù)組和指針9.2.1一維數(shù)組和數(shù)組元素的地址9.2.2通過數(shù)組的首地址引用數(shù)組元素9.2.3通過指針引用一維數(shù)組元素9.2.4用帶下標(biāo)的指針變量引用一維數(shù)組元素2023/2/43:159.2.1一維數(shù)組和數(shù)組元素的地址
9.2.2通過數(shù)組的首地址引用數(shù)組元素一個變量有地址,一個數(shù)組包含若干元素,每個數(shù)組元素都有相應(yīng)的地址指針變量可以指向數(shù)組元素(把某一元素的地址放到一個指針變量中)所謂數(shù)組元素的指針就是數(shù)組元素的地址2023/2/43:15可以用一個指針變量指向一個數(shù)組元素inta[10]={1,3,5,7,9,11,13,15,17,19};int*p;p=&a[0];等價于p=a;等價于int*p=a;或int*p=&a[0];注意:數(shù)組名a不代表整個數(shù)組,只代表數(shù)組首元素的地址?!皃=a;”的作用是“把a數(shù)組的首元素的地址賦給指針變量p”,而不是“把數(shù)組a各元素的值賦給p”。2023/2/43:15在指針指向數(shù)組元素時,允許以下運算:加一個整數(shù)(用+或+=),如p+1減一個整數(shù)(用-或-=),如p-1自加運算,如p++,++p自減運算,如p--,--p兩個指針相減,如p1-p2(只有p1和p2都指向同一數(shù)組中的元素時才有意義)2023/2/43:15(1)如果指針變量p已指向數(shù)組中的一個元素,則p+1指向同一數(shù)組中的下一個元素,p-1指向同一數(shù)組中的上一個元素。floata[10],*p=a;假設(shè)a[0]的地址為2000,則p的值為2000p+1的值為2004P-1的值為1996越界2023/2/43:15(2)如果p的初值為&a[0],則p+i和a+i就是數(shù)組元素a[i]的地址,或者說,它們指向a數(shù)組序號為i的元素a[0]a[1]a[2]a[3]a[4]a[5]a[6]a[7]a[8]a[9]pp+1,a+1p+i,a+ip+9,a+92023/2/43:15(3)*(p+i)或*(a+i)是p+i或a+i所指向的數(shù)組元素,即a[i]。a[0]a[1]a[2]a[3]a[4]a[5]a[6]a[7]a[8]a[9]pp+1,a+1p+i,a+ip+9,a+9*(p+i)2023/2/43:15(4)如果指針p1和p2都指向同一數(shù)組p2-p1的值是4不能p1+p2a[0]a[1]a[2]a[3]a[4]a[5]a[6]a[7]a[8]a[9]p1p22023/2/43:159.2.3通過指針引用一維數(shù)組元素
9.2.4用帶下標(biāo)的指針變量引用一維數(shù)組元素引用一個數(shù)組元素,可用下面兩種方法:
(1)下標(biāo)法,如a[i]形式
(2)指針法,如*(a+i)或*(p+i)
其中a是數(shù)組名,p是指向數(shù)組元素的指針變量,其初值p=a2023/2/43:15
例9.4有一個整型數(shù)組a,有10個元素,要求輸出數(shù)組中的全部元素。解題思路:引用數(shù)組中各元素的值有3種方法:(1)下標(biāo)法;(2)通過數(shù)組名計算數(shù)組元素地址,找出元素的值;(3)用指針變量指向數(shù)組元素分別寫出程序,以資比較分析。2023/2/43:15(1)下標(biāo)法。
#include<stdio.h>intmain(){inta[10];inti;printf(“enter10integernumbers:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)printf(“%d”,a[i]);printf("%\n");return0;}2023/2/43:15(2)通過數(shù)組名計算數(shù)組元素地址,找出元素的值#include<stdio.h>intmain(){inta[10];inti;printf(“enter10integernumbers:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)printf(“%d”,*(a+i));printf("\n");return0;}scanf("%d",a+i);2023/2/43:15(3)用指針變量指向數(shù)組元素#include<stdio.h>intmain(){inta[10];int*p,i;printf(“enter10integernumbers:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(p=a;p<(a+10);p++)printf(“%d”,*p);printf("\n");return0;}for(p=a;p<(a+10);p++)scanf("%d",p);for(p=a;p<(a+10);a++)printf(“%d”,*a);錯!2023/2/43:153種方法的比較:①第(1)和第(2)種方法執(zhí)行效率相同C編譯系統(tǒng)是將a[i]轉(zhuǎn)換為*(a+i)處理的,即先計算元素地址。因此用第(1)和第(2)種方法找數(shù)組元素費時較多。2023/2/43:153種方法的比較:②第(3)種方法比第(1)、第(2)種方法快用指針變量直接指向元素,不必每次都重新計算地址,像p++這樣的自加操作是比較快的這種有規(guī)律地改變地址值(p++)能大大提高執(zhí)行效率2023/2/43:153種方法的比較:③用下標(biāo)法比較直觀,能直接知道是第幾個元素。
用地址法或指針變量的方法不直觀,難以很快地判斷出當(dāng)前處理的是哪一個元素。2023/2/43:15
例9.5通過指針變量輸出整型數(shù)組a的10個元素。解題思路:
用指針變量p指向數(shù)組元素,通過改變指針變量的值,使p先后指向a[0]到a[9]各元素。2023/2/43:15#include<stdio.h>intmain(){int*p,i,a[10];p=a;printf(“enter10integernumbers:\n");for(i=0;i<10;i++)scanf(“%d”,p++);for(i=0;i<10;i++,p++)printf(“%d”,*p);printf("\n");return0;}退出循環(huán)時p指向a[9]后面的存儲單元因此執(zhí)行此循環(huán)出問題重新執(zhí)行p=a;2023/2/43:159.3函數(shù)之間對一維數(shù)組和數(shù)組元素的引用用數(shù)組名作函數(shù)參數(shù)時,因為實參數(shù)組名代表該數(shù)組首元素的地址,形參應(yīng)該是一個指針變量C編譯都是將形參數(shù)組名作為指針變量來處理的2023/2/43:15intmain(){voidfun(intarr[],intn];intarray[10];
┇
fun(array,10);return0;}voidfun(intarr[],intn){┇}fun(int*arr,intn)2023/2/43:15intmain(){voidfun(intarr[],intn];intarray[10];
┇
fun(array,10);return0;}voidfun(int*arr,intn){┇}array[0]arr[0]array數(shù)組arrarray[3]arr[3]arr+32023/2/43:15實參數(shù)組名是指針常量,但形參數(shù)組名是按指針變量處理在函數(shù)調(diào)用進行虛實結(jié)合后,它的值就是實參數(shù)組首元素的地址在函數(shù)執(zhí)行期間,形參數(shù)組可以再被賦值voidfun(arr[],intn){printf(″%d\n″,*arr);
arr=arr+3;
printf(″%d\n″,*arr);
}2023/2/43:15例9.6將數(shù)組a中n個整數(shù)按相反順序存放解題思路:將a[0]與a[n-1]對換,……將a[4]與a[5]對換。ji2023/2/43:15例9.6將數(shù)組a中n個整數(shù)按相反順序存放解題思路:將a[0]與a[n-1]對換,……將a[4]與a[5]對換。ji2023/2/43:15例9.6將數(shù)組a中n個整數(shù)按相反順序存放解題思路:將a[0]與a[n-1]對換,……將a[4]與a[5]對換。ji2023/2/43:15例9.6將數(shù)組a中n個整數(shù)按相反順序存放解題思路:將a[0]與a[n-1]對換,……將a[4]與a[5]對換。ji2023/2/43:15例9.6將數(shù)組a中n個整數(shù)按相反順序存放解題思路:將a[0]與a[n-1]對換,……將a[4]與a[5]對換。ji2023/2/43:15#include<stdio.h>intmain(){voidinv(intx[],intn);inti,a[10]={3,7,9,11,0,6,7,5,4,2};for(i=0;i<10;i++)printf(“%d”,a[i]);printf("\n");inv(a,10);for(i=0;i<10;i++)printf(“%d”,a[i]);printf("\n");return0;}2023/2/43:15voidinv(intx[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-1-i;temp=x[i];x[i]=x[j];x[j]=temp; }}voidinv(intx[],intn){inttemp,*i,*j;i=x;j=x+n-1;for(;i<j;i++,j--){temp=*i;*i=*j;*j=temp;}}優(yōu)化2023/2/43:15例9.7改寫例9.6,用指針變量作實參。#include<stdio.h>intmain(){voidinv(int*x,intn);inti,arr[10],*p=arr;for(i=0;i<10;i++,p++)scanf(“%d”,p);inv(p,10);for(p=arr;p<arr+10;p++)printf(“%d”,*p);printf("\n");return0;}不可少?。?!2023/2/43:15arr是一個地址常量,p是一個地址變量,必須先開辟存儲空間才能使用
例9.8用指針方法對10個整數(shù)按由大到小順序排序。解題思路:在主函數(shù)中定義數(shù)組a存放10個整數(shù),定義int*型指針變量p指向a[0]定義函數(shù)sort使數(shù)組a中的元素按由大到小的順序排列在主函數(shù)中調(diào)用sort函數(shù),用指針p作實參用選擇法進行排序2023/2/43:15#include<stdio.h>intmain(){voidsort(intx[],intn);inti,*p,a[10];p=a;for(i=0;i<10;i++)scanf(“%d”,p++);p=a;sort(p,10);for(p=a,i=0;i<10;i++){printf(“%d”,*p);p++;}printf("\n");return0;}2023/2/43:15voidsort(intx[],intn){inti,j,k,t;for(i=0;i<n-1;i++){k=i;for(j=i+1;j<n;j++)if(x[j]>x[k])k=j;if(k!=i) {t=x[i];x[i]=x[k];x[k]=t;}}}voidsort(int*x,intn)if(*(x+j)>*(x+k))k=j;{t=*(x+i);*(x+i)=*(x+k);*(x+k)=t;}2023/2/43:159.5二維數(shù)組的定義和二維數(shù)組元素的引用2456184712431600234627573045201817252020245814361427117510461976147720181分隊2分隊3分隊隊員1隊員2隊員3隊員4隊員5隊員6floatpay[3][6];2023/2/43:159.5.1二維數(shù)組的定義9.5.2二維數(shù)組元素的引用9.5.3二維數(shù)組的初始化9.5.4通過賦初值定義二維數(shù)組的大小9.5.5二維數(shù)組的定義和數(shù)組元素引用舉例9.5二維數(shù)組的定義和二維數(shù)組元素的引用2023/2/43:15二維數(shù)組定義的一般形式為
類型符數(shù)組名[常量表達式][常量表達式];如:floata[3][4],b[5][10];二維數(shù)組可被看作是一種特殊的一維數(shù)組:
它的元素又是一個一維數(shù)組例如,把a看作是一個一維數(shù)組,它有3個元素:a[0]、a[1]、a[2]每個元素又是一個包含4個元素的一維數(shù)組9.5.1二維數(shù)組的定義2023/2/43:15a[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]2023/2/43:15a[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]邏輯存儲內(nèi)存中的存儲順序2023/2/43:15二維數(shù)組元素的表示形式為:
數(shù)組名[下標(biāo)][下標(biāo)]
b[1][2]=a[2][3]/2合法for(i=0;i<m;i++)printf(“%d,%d\n”,a[i][0],a[0][i]);合法9.5.2二維數(shù)組元素的引用2023/2/43:15inta[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}};等價于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}};9.5.3二維數(shù)組的初始化
9.5.4通過賦初值定義二維數(shù)組的大小2023/2/43:15inta[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};等價于:inta[][4]={1,2,3,4,5,6,7,8,9,10,11,12};inta[][4]={{0,0,3},{},{0,10}};合法9.5.3二維數(shù)組的初始化
9.5.4通過賦初值定義二維數(shù)組的大小2023/2/43:15以下錯誤的定義語句是A)intx[4][3]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};B)intx[4][]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};C)intx[][3]={{0},{1},{1,2,3}};D)intx[][3]={1,2,3,4};
參考答案:B【解析】二維數(shù)組定義的一般形式是:類型說明符數(shù)組名[常量表達式1][常量表達式2]。其中常量表達式1表示第一維下標(biāo)的長度,常量表達式2表示第二維下標(biāo)的長度。如對二維數(shù)組全部元素賦初值,則第一維的長度可以不給出。但如果對x[4][]賦值,只確定行數(shù),而不確定列數(shù),就無法正確賦值。因此B選項正確。2023/2/43:15以下敘述中正確的是A)語句inta[4][3]={{1,2},{4,5}};是錯誤的初始化形式B)語句inta[4][3]={1,2,4,5};是錯誤的初始化形式C)語句inta[][3]={1,2,4,5};是錯誤的初始化形式D)在邏輯上,可以把二維數(shù)組看成是一個具有行和列的表格或矩陣參考答案:D【解析】二維數(shù)組在初始化時,可以省略第1維,但是不可以省略第2維??梢詾椴糠?jǐn)?shù)組元素初始化。B選項、C選項和A選項內(nèi)的初始化都沒有錯誤。因此D選項正確。2023/2/43:15設(shè)有定義:intx[2][3];
則以下關(guān)于二維數(shù)組x的敘述錯誤的是
A)元素x[0]可看作是由3個整型元素組成的一維數(shù)組B)數(shù)組x可以看作是由x[0]和x[1]兩個元素組成的一維數(shù)組C)可以用x[0]=0;的形式為數(shù)組所有元素賦初值0x[0]和x[1]是數(shù)組名,分別代表一個地址常量參考答案:C【解析】x[0]可看作是由3個整型元素組成的一維數(shù)組,不可以用語句x[0]=0;為數(shù)組所有元素賦初值0。因此C選項正確。2023/2/43:15
例9.9將一個二維數(shù)組行和列的元素互換,存到另一個二維數(shù)組中。9.5.5二維數(shù)組的定義和數(shù)組元素引用舉例2023/2/43:15解題思路:可以定義兩個數(shù)組:數(shù)組a為2行3列,存放指定的6個數(shù)數(shù)組b為3行2列,開始時未賦值將a數(shù)組中的元素a[i][j]存放到b數(shù)組中的b[j][i]元素中用嵌套的for循環(huán)完成9.5.5二維數(shù)組的定義和數(shù)組元素引用舉例2023/2/43:15#include<stdio.h>intmain(){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");}處理a的一行中各元素處理a中某一列元素輸出a的各元素a元素值賦給b相應(yīng)元素2023/2/43:15printf("arrayb:\n");for(i=0;i<=2;i++){for(j=0;j<=1;j++)printf("%5d",b[i][j]);printf("\n");}return0;}輸出b的各元素2023/2/43:15
例9.10有一個3×4的矩陣,要求編程序求出其中值最大的那個元素的值,以及其所在的行號和列號。解題思路:采用“打擂臺算法”先找出任一人站在臺上,第2人上去與之比武,勝者留在臺上第3人與臺上的人比武,勝者留臺上,敗者下臺以后每一個人都是與當(dāng)時留在臺上的人比武,直到所有人都上臺比為止,最后留在臺上的是冠軍2023/2/43:15
例9.10有一個3×4的矩陣,要求編程序求出其中值最大的那個元素的值,以及其所在的行號和列號。解題思路:采用“打擂臺算法”先把a[0][0]的值賦給變量maxmax用來存放當(dāng)前已知的最大值a[0][1]與max比較,如果a[0][1]>max,則表示a[0][1]是已經(jīng)比過的數(shù)據(jù)中值最大的,把它的值賦給max,取代了max的原值以后依此處理,最后max就是最大的值2023/2/43:15fori=0to2forj=0to3max=a[i][j]row=Icolum=ja[i][j]>max真max=a[0][0]輸出:max,row,colum假2023/2/43:15記行號……
inti,j,row=0,colum=0,max;inta[3][4]={{1,2,3,4},{9,8,7,6},{-10,10,-5,2}};max=a[0][0];for(i=0;i<=2;i++)for(j=0;j<=3;j++)if(a[i][j]>max){max=a[i][j];row=i;colum=j;}printf("max=%d\nrow=%d\ncolum=%d\n",max,row,colum);……記最大值記列號2023/2/43:15有以下程序#include<stdio.h>main(){inti,x[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++)printf("%d",x[i][2-i]);printf("\n");
}
程序的輸出結(jié)果是A)150B)357C)147369
參考答案:B程序首先初始化二維數(shù)組x[3][3],然后通過3次for循環(huán),輸出x[0][2]、x[1][1]和x[2][0]的值,即3、5、7。因此B選項正確。2023/2/43:15有一個n*n的二維數(shù)組a:1.輸出左上至右下的對角線上的元素
for(i=0;i<n;i++)
printf(“%d”,a[i][i]);2.輸出右上至左下的對角線上的元素
for(i=0;i<n;i++)printf(“%d”,a[i][n-1-i]);3.輸出靠邊元素
for(i=0;i<n;i++)
printf(“%d”,a[i][0]);//第一列的元素
printf(“%d”,a[0][i]);//第一行的元素
printf(“%d”,a[i][n-1]);//第n列的元素
printf(“%d”,a[n-1][i]);//第n行的元素2023/2/43:15有以下程序#include<stdio.h>main(){inta[4][4]={{1,4,3,2},{8,6,5,7},{3,7,2,5},{4,8,6,1}};inti,j,k,t;for(i=0;i<4;i++)for(j=0;j<3;j++)for(k=j+1;k<4;k++)if(a[j][i]>a[k][i]){t=a[j][i];a[j][i]=a[k][i];a[k][i]=t;}/*按列排序*/for(i=0;i<4;i++)printf("%d,",a[i][i]);}
程序運行后的輸出結(jié)果是A)1,6,2,1,B)8,7,3,1,C)4,7,5,2,D)1,6,5,7,參考答案:D【解析】首先對二維數(shù)組進行賦值操作,a[0][0]、a[0][1]、…、a[3][2]、a[3][3]的值為1、4、…、6、1。通過for語句和if語句,對二維數(shù)組各列元素進行由小到大的排序操作,程序最后通過for語句輸出二維數(shù)組對角線上的元素。因此D選項正確。2023/2/43:15有以下程序#include<stdio.h>main(){inti,t[][3]={9,8,7,6,5,4,3,2,1};for(i=0;i<3;i++)printf("%d",t[2-i][i]);
}程序執(zhí)行后的輸出結(jié)果是A)357B)753C)369D)751
參考答案:A【解析】二維數(shù)組t[][3]實際上指t[3][3]={{9,8,7},{6,5,4},{3,2,1}},通過循環(huán)語句for語句可以得到i=0,t[2][0]=3、i=1,t[1][1]=5、i=2,t[0][2]=7、i=3時循環(huán)結(jié)束即t[2][0]=3、t[1][1]=5、t[0][2]=7。因此A選項正確。2023/2/43:15有以下程序:#include<stdio.h>main(){
intb[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=1;
for(i=0;i<3;i++)
for(j=i;j<=i;j++)t+=b[i][b[j][i]];
printf("%d\n",t);}程序運行后的輸出結(jié)果是()。A)3
B)4C)1
D)9參考答案:B【解析】 每次內(nèi)循環(huán)只循環(huán)一次就結(jié)束,第一次外循環(huán)時t=t+b[0][b[0][0]]=1+b[0][0]=1+0=1;第二次外循環(huán)時t=t+b[1][b[1][1]]=1+b[1][1]=1+1=2;第三次外循環(huán)時t=t+b[2][b[2][2]]=2+b[2][2]=2+2=4。
2023/2/43:15有如下程序#include<stdio.h>main(){inti,k;intarray[4][2]={{1,2},{4,9},{6}};for(i=0;i<2;i++)for(k=0;k<4;k++){printf("%d,",array[k][i]);}printf("\n");}程序運行后的輸出結(jié)果是A)1,4,6,0,2,9,0,0,B)1,2,4,9,6,C)2,9,0,0,1,4,6,0,D)2,9,6,1,4,參考答案:A【解析】二維數(shù)組的初始化有兩種方式,其中一種是分行初始化,方式為:數(shù)據(jù)類型數(shù)組名[行下標(biāo)表達式][列下標(biāo)表達式]={{第0行初值},{第1行初值表},…{最后1行初值表}};,如果初值表只對部分元素賦初值,沒有被賦初值的元素將被自動賦值為0,故相當(dāng)于array[4][2]={{1,2},{4,9},{6,0},{0,0}}。執(zhí)行兩次for語句,實現(xiàn)按列依次輸出數(shù)組中元素值為1,4,6,0,2,9,0,0,A選項正確。2023/2/43:15有以下程序:#include<stdio.h>main(){intx[3][2]={0},i;for(i=0;i<3;i++)scanf("%d",x[i]);printf("%3d%3d%3d\n",x[0][0],x[0][1],x[1][0]);}若運行時輸入:246<回車>,則輸出結(jié)果為()。A)204B)200C)240D)246
參考答案:A【解析】本題中輸入的3個數(shù)據(jù)2,4,6分別賦值給了x[0][0],x[1][0],x[2][0]。x[0][1]仍為初始時的0,所以打印輸出時的結(jié)果為A)選項。2023/2/43:15設(shè)有一個M*N的矩陣已經(jīng)存放在一個M行N列的數(shù)組x中,且有以下程序段
sum=0;for(i=0;i<M;i++)sum+=x[i][0]+x[i][N-1];for(j=1;j<N-1;j++)sum+=x[0][j]+x[M-1][j];以上程序段計算的是A)矩陣所有靠邊元素之和B)矩陣所有不靠邊元素之和C)矩陣所有元素之和D)矩陣兩條對角線元素之和
參考答案:A【解析】程序執(zhí)行過程為:第一個for循環(huán)實現(xiàn)對第一列和第N列求和。第二個for循環(huán)在上一個for循環(huán)結(jié)果上實現(xiàn)對第一行和第M行從第二個元素到第N-1個元素的求和,總體來說,就是矩陣所有靠邊元素之和,A選項正確。2023/2/43:159.6二維數(shù)組和指針指針變量可以指向一維數(shù)組中的元素,也可以指向多維數(shù)組中的元素。但在概念上和使用方法上,多維數(shù)組的指針比一維數(shù)組的指針要復(fù)雜一些。2023/2/43:151.多維數(shù)組元素的地址inta[3][4]={{1,3,5,7},{9,11,13,15},{17,19,21,23}};1357911131517192123a[0]a[1]a[2]aa+1a+2a[0]a[0]+1a[0]+2a[0]+3行指針列指針2023/2/43:15a代表第0行首地址a+1代表第1行首地址a+2代表第2行首地址1357911131517192123a[0]a[1]a[2]aa+1a+2a[0]a[0]+1a[0]+2a[0]+3行指針列指針行指針每加1,走一行2023/2/43:15a+i代表行號為i的行首地址(按行變化)*(a+i)代表什么?1357911131517192123a[0]a[1]a[2]aa+1a+2a[0]a[0]+1a[0]+2a[0]+3行指針列指針相當(dāng)于a[i]2023/2/43:15a[0]代表a[0][0]的地址a[0]+1代表a[0][1]的地址a[0]+2代表a[0][2]的地址a[0]+3代表a[0][3]的地址1357911131517192123a[0]a[1]a[2]aa+1a+2a[0]a[0]+1a[0]+2a[0]+3行指針列指針列指針每加1,走一列2023/2/43:15a[1]代表誰的地址?a[1]+1代表誰的地址?a[1]+2代表誰的地址?a[1]+3代表誰的地址?1357911131517192123a[0]a[1]a[2]aa+1a+2a[0]a[0]+1a[0]+2a[0]+3行指針列指針2023/2/43:15a[i]+j代表誰的地址?1357911131517192123a[0]a[1]a[2]aa+1a+2a[0]a[0]+1a[0]+2a[0]+3行指針列指針代表a[i][j]的地址*(a[i]+j)代表什么?代表元素a[i][j]*(*(a+i)+j)代表什么?與*(a[i]+j)等價2023/2/43:15例9.11二維數(shù)組的有關(guān)數(shù)據(jù)(地址和值)#include<stdio.h>intmain(){inta[3][4]={1,3,5,7,9,11,13,15,17,19,21,23};2023/2/43:15printf(“%d,%d\n”,a,*a);printf(“%d,%d\n”,a[0],*(a+0));printf(“%d,%d\n”,&a[0],&a[0][0]);printf(“%d,%d\n”,a[1],a+1);printf(“%d,%d\n”,&a[1][0],*(a+1)+0);printf(“%d,%d\n”,a[2],*(a+2));printf(“%d,%d\n”,&a[2],a+2);printf(“%d,%d\n”,a[1][0],*(*(a+1)+0));printf(“%d,%d\n”,*a[2],*(*(a+2)+0));return0;}2023/2/43:15printf(“%d,%d\n”,a,*a);printf(“%d,%d\n”,a[0],*(a+0));printf(“%d,%d\n”,&a[0],&a[0][0]);printf(“%d,%d\n”,a[1],a+1);printf(“%d,%d\n”,&a[1][0],*(a+1)+0);printf(“%d,%d\n”,a[2],*(a+2));printf(“%d,%d\n”,&a[2],a+2);printf(“%d,%d\n”,a[1][0],*(*(a+1)+0));printf(“%d,%d\n”,*a[2],*(*(a+2)+0));return0;}2023/2/43:15printf(“%d,%d\n”,a,*a);printf(“%d,%d\n”,a[0],*(a+0));printf(“%d,%d\n”,&a[0],&a[0][0]);printf(“%d,%d\n”,a[1],a+1);printf(“%d,%d\n”,&a[1][0],*(a+1)+0);printf(“%d,%d\n”,a[2],*(a+2));printf(“%d,%d\n”,&a[2],a+2);printf(“%d,%d\n”,a[1][0],*(*(a+1)+0));printf(“%d,%d\n”,*a[2],*(*(a+2)+0));return0;}2023/2/43:152.指向多維數(shù)組元素的指針變量(1)指向數(shù)組元素的指針變量
例9.12有一個3×4的二維數(shù)組,要求用指向元素的指針變量輸出二維數(shù)組各元素的值。2023/2/43:15解題思路:二維數(shù)組的元素是整型的,它相當(dāng)于整型變量,可以用int*型指針變量指向它二維數(shù)組的元素在內(nèi)存中是按行順序存放的,即存放完序號為0的行中的全部元素后,接著存放序號為1的行中的全部元素,依此類推因此可以用一個指向整型元素的指針變量,依次指向各個元素2023/2/43:15#include<stdio.h>intmain(){inta[3][4]={1,3,5,7,9,11,13,15,17,19,21,23};int*p;for(p=a[0];p<a[0]+12;p++){if((p-a[0])%4==0)printf(“\n”);printf(“%4d”,*p);}printf("\n");return0;}控制換行逐個訪問各元素時常用此類指針2023/2/43:15(2)指向由m個元素組成的一維數(shù)組的指針變量
例9.13輸出二維數(shù)組任一行任一列元素的值。解題思路:假設(shè)仍然用例9.12程序中的二維數(shù)組,例9.12中定義的指針變量是指向變量或數(shù)組元素的,現(xiàn)在改用指向一維數(shù)組的指針變量。2023/2/43:15#include<stdio.h>intmain(){inta[3][4]={1,3,5,7,9,11,13,15,17,19,21,23};
int(*p)[4],i,j;p=a;printf(“enterrowandcolum:");scanf(“%d,%d”,&i,&j);printf(“a[%d,%d]=%d\n”,
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- PDIC-NN-生命科學(xué)試劑-MCE-4874
- ent-Corey-PG-lactone-diol-生命科學(xué)試劑-MCE-9112
- 10-Chloroestra-1-4-diene-3-17-dione-10-CIEsra-生命科學(xué)試劑-MCE-1585
- 2025年度級建造師資格證書注冊與建筑產(chǎn)業(yè)互聯(lián)網(wǎng)服務(wù)合同
- 二零二五年度花店知識產(chǎn)權(quán)保護合作協(xié)議
- 二零二五年度智能化小區(qū)物業(yè)保潔人員勞動合同
- 科技教育與學(xué)生實踐基地的未來發(fā)展
- 提高電動工具使用效率保障員工操作安全
- 提高商業(yè)學(xué)校實驗室安全管理的措施與方法
- 三人合作經(jīng)營企業(yè)合同協(xié)議書2025
- 商業(yè)銀行的風(fēng)險審計與內(nèi)部控制
- 2025年新能源汽車銷售傭金返點合同范本6篇
- 2025-2030年中國配電變壓器市場未來發(fā)展趨勢及前景調(diào)研分析報告
- GB/T 6403.4-2008零件倒圓與倒角
- GB/T 2518-2019連續(xù)熱鍍鋅和鋅合金鍍層鋼板及鋼帶
- 企業(yè)合規(guī)管理-課件
- 火電廠安全工作規(guī)程
- GB∕T 33047.1-2016 塑料 聚合物熱重法(TG) 第1部分:通則
- 電力業(yè)務(wù)許可證豁免證明
- 特發(fā)性肺纖維化IPF
- FIDIC國際合同條款中英文對照.doc
評論
0/150
提交評論