




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、. 第六章 指 针6.1 指针的概念内存区的每一个字节有一个编号,这就是“地址。&是取地址运算符,&i是变量i的地址。一个变量的地址称为该变量的指针。假设一个变量是专门存放另一个变量的地址,那么称它为指针变量。6.2 变量与指针6.2.1 定义指针变量int i,j;int *pi=&i,*pj; /pi,pj是指向整型数据的指针变量。double *pd;pj=&j;一般的C+编译系统为每一个指针变量分配4个字节的存储单元。6.2.2 引用指针变量1& 取地址运算符号2* 指针运算符或称间接引用运算符*p为指针变量p所指向的存储单元。#include
2、<iostream.h>void mainint var=8;int* pointer;pointer=&var;*pointer=5;cout<<var<<" "<<*pointer<<" "<<*&var<<endl;cout<<pointer<<" "<<&pointer <<" "<<&var<<" "
3、<<&*pointer<<endl;5 5 50x0064FDF0 0x0064FDF4 0x0064FDF0 0x0064FDF0例6.1 通过指针变量访问整型变量#include <iostream>using namespace std;void mainint a,b;int *p1,*p2;a=100;b=10;p1=&a;p2=&b;cout<<a<<" "<<b<<endl;cout<<*p1<<" "<
4、<*p2<<endl;100 10100 10&*p1,*&a的含义是什么?例6.2 输入a和b两个整数,按先大后小的顺序输出用指针变量处理#include <iostream>using namespace std;void mainint *p1,*p2,*p,a,b;cin>>a>>b;p1=&a;p2=&b;ifa<bp=p1;p1=p2;p2=p;cout<<"a="<<a<<" b="<<b<<
5、;endl;cout<<"max="<<*p1<<" min="<<*p2<<endl;45 78a=45 b=78max=78 min=45调用函数时不会改变实参指针变量的值,但可以改变实参指针变量所指向变量的值。6.2.3 指针作为函数参数例6.3 题目同例6.2#include <iostream>using namespace std;void mainvoid swapint *p1,int *p2;int *pointer_1,*pointer_2,a,b;cin>
6、>a>>b;ifa<bswap&a, &b;cout<<"max="<<a<<" min="<<b<<endl;void swapint *p1,int *p2int temp;temp=*p1;*p1=*p2;*p2=temp;45 78max=78 min=45例6.4 输入a,b,c三个整数,按由大到小的顺序输出。#include <iostream>using namespace std;void mainvoid exchangein
7、t *,int *,int *;int a,b,c,*p1,*p2,*p3;cin>>a>>b>>c;p1=&a;p2=&b;p3=&c;exchangep1,p2,p3;cout<<a<<" "<<b<<" "<<c<<endl;void exchangeint *q1,int *q2,int *q3void swapint *p1,int *p2;if*q1<*q2swapq1,q2;/前两个if选出最大,if*q
8、1<*q3swapq1,q3;/放入q1所指的变量中if*q2<*q3swapq2,q3;void swapint *p1,int *p2int temp;temp=*p1;*p1=*p2;*p2=temp;12 -56 8787 12 -566.3 指针与数组6.3.1 指向数组元素的指针在中,一个数组类型的操作数被自动转换为指向数组第一个元素的常量指针。int a10;int *p;p=&a0; 与语句 p=a; 等价。int *q=a;*q=5;假设p的初值&a0,那么:(1) p+i和a+i就是ai的地址。(2) *p+i和*a+i就是ai。(3) pi和*
9、p+i等价。下标法和指针法int a10;cout<<a<<endl;cout<<a+1<<endl;cout<<a+2<<endl;可以发现地址值差4#include<iostream.h>void mainint a10=2,4,6,8,10;forint* p=a;p<a+10;p+cout<<p0<<" " /等价于cout<<*p;cout<<endl;cout<<p-6<<" "co
10、ut<<p-7<<" "cout<<p-8<<" "cout<<p-9<<" "cout<<p-10<<endl;2 4 6 8 10 0 0 0 0 010 8 6 4 2和*优先级一样,结合规那么是自右至左,即自右向左运算,下面是对应的结果:y=*px+; /等价于y=*px+;y=*+px /等价于y=*+px;y=+*px / 等价于y=+*px;y=*px+;由于后缀运算的特点,第一个表达式将px指向的变量的值赋给y,然后使px指
11、向下一个变量。第二个表达式将px指向下一个变量,然后再将px指向的变量的值赋给y。后两个表达式对px的指向的变量进展增1运算,px未被改变。#include<iostream.h>void mainint a10=2,4,6,8,10,12,14,16,18;int y;int* px=a;y=*px+; /等价于y=*px+;cout<<y<<" "<<*px<<endl;/此时px指向a+1 y=2 *px=4y=*+px; /等价于y=*+px;cout<<y<<" &quo
12、t;<<*px<<" "<<px<<endl;/此时px指向a+2 *px=6 y=6cout<<a2<<endl;y=+*px; / 等价于y=+*px;cout<<y<<" "<<*px<<" "<<px<<endl; /此时px指向a+2未变,a2的值是6+1cout<<a2<<endl;y=*px+;cout<<y<<" &qu
13、ot;<<*px<<endl; /此时px指向a+2未变,a2的值是6+1+1cout<<a2<<endl;2 46 6 0x0064FDD867 7 0x0064FDD877 881*p+与*+p作用不同。前者是先取*p值,然后使p加1。后者是先使p加1,再取*p。2*p+表示p所指向的元素值加1。3假设p当前指向ai,那么*p- 先对p进展*运算,得到ai,再使p减1,p指向ai-1.*+p 先使p自加1,再作*运算,得到ai+1。*-p 先使p自减1,再作*运算,得到ai-1。6.3.2 用指针变量作函数参数接收数组地址例6.6 将10个整
14、数用选择排序按由小到大的顺序排列。#include <iostream>using namespace std;void main/void select_sortint array,int n;void select_sortint *p,int n;int a10,i;cout<<"enter the original array:"<<endl;fori=0;i<10;i+ cin>>ai;select_sorta,10;cout<<"the sorted array:"<&l
15、t;endl;fori=0;i<10;i+ cout<<ai<<" "cout<<endl;void select_sortint *p,int nint i,j,k,t;fori=0;i<n-1;i+k=i;forj=i+1;j<n;j+if*p+j<*p+kk=j;t=*p+k;*p+k=*p+i;*p+i=t;/*void select_sortint array,int nint i,j,k,t;fori=0;i<n-1;i+k=i;forj=i+1;j<n;j+ifarrayj<arra
16、ykk=j;t=arrayk;arrayk=arrayi;arrayi=t;*/enter the original array:6 9 -2 56 87 11 -54 3 0 77the sorted array:-54 -2 0 3 6 9 11 56 77 87例 使用函数input 输入一组数,然后由main显示出该组数的例子。#include<iostream.h>void mainint a10;void inputint *s,int n ;inputa,10;for int i=0;i<10;i+cout<<ai<<" &qu
17、ot;cout<<endl;void inputint *s,int n cout<< "Please enter "<<n<< " integers"<<endl; forint i=0;i<n;i+cin>>si;Please enter 10 integers1 2 3 4 5 6 7 8 9 101 2 3 4 5 6 7 8 9 10#include <iostream.h>void funint *a,int *bint k;cout<<*a
18、<<" "<<*b<<endl;k=*a;*a=*b;*b=k;void mainint a=3,b=6,*x=&a,*y=&b;cout<<a<<" "<<b<<endl;funx,y;cout<<a<<" "<<b<<endl;3 63 66 36.3.3 多维数组与指针1. 多维数组元素的地址int a34=1,3,5,7,9,11,13,15,17,19,21,23;a是一个数组名
19、。a数组包含3行,即三个元素:a0,a1,a2。而每一元素又是一维数组,它包含4个元素。#include <iostream>using namespace std;void mainint a34=1,3,5,7,9,11,13,15,17,19,21,23;cout<<a<<" "<<&a00<<endl;cout<<a+1<<" "<<&a10<<endl;cout<<a+2<<" "
20、;<<&a20<<endl;cout<<*a1+1<<" "<<*a+1+1<<" "<<a11<<endl;0068FDC8 0068FDC80068FDD8 0068FDD80068FDE8 0068FDE811 11 112. 指向多维数组元素的指针变量(1) 指向数组元素的指针变量例6.7 输出二维数组各元素的值#include <iostream>using namespace std;void mainint a34=1,3,5
21、,7,9,11,13,15,17,19,21,23;int *p;/forp=a0;p<*a+12;p+forp=a0;p<a0+12;p+cout<<*p<<' 'cout<<endl;1 3 5 7 9 11 13 15 17 19 21 23(2) 指向由m个元素组成的一维数组的指针指向数组的指针#include<iostream.h>void main int n35=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15;int *a5=n;forint i=0;i<5;i+cout&l
22、t;<*ai<<" "cout<<endl;fori=0;i<5;i+cout<<*a+1i<<" "cout<<endl;fori=0;i<5;i+cout<<*a+2i<<" "cout<<endl;1 2 3 4 56 7 8 9 1011 12 13 14 15#include<iostream.h>void main int n35=1,2,3,4,5,6,7,8,9,10;int *a5=n;int
23、 *p;cout<<*a<<" "<<n<<endl;/ 0x0064FDB0 0x0064FDB0p = *a;a+=1;/使a指向下一个int5 这两句可用 p=*a+;代替。cout<<*a<<" "<<p<<endl;/前后两个a差20,说明a是指向int5的指针。0x0064FDC4 0x0064FDB0forint i=0;i<5;i+cout<<*p+<<" "/1 2 3 4 5cout<
24、<endl;p = *a;cout<<*a<<" "<<p<<endl;/ 0x0064FDC4 0x0064FDC4fori=0;i<5;i+cout<<*p+<<" "/6 7 8 9 10cout<<endl;cout<<*a<<endl;/ 60x0064FDB0 0x0064FDB00x0064FDC4 0x0064FDB01 2 3 4 50x0064FDC4 0x0064FDC46 7 8 9 106#include &l
25、t;iostream>using namespace std;void mainint a34=1,3,5,7,9,11,13,15,17,19,21,23;int *p4,i;forp=a;p<a+3;p+fori=0;i<4;i+cout<<*p+i<<' '/cout<<p0i<<' '/cout<<*pi<<' 'cout<<endl;1 3 5 7 9 11 13 15 17 19 21 233. 用指向数组的指针作函数参数例6.9 输
26、出二维数组各元素的值#include <iostream>using namespace std;void mainvoid outputint*p4;int a34=1,3,5,7,9,11,13,15,17,19,21,23;outputa;void outputint *p4int i,j;fori=0;i<3;i+forj=0;j<4;j+cout<<*p+i+j<<" "cout<<endl;1 3 5 7 9 11 13 15 17 19 21 23#include <iostream.h>
27、void mainint a45;void inputint s5,int n;inputa,4;forint i =0;i<4;i+forint j=0;j<5;j+cout<<aij<<" "cout<<endl;void inputint s5,int lencout<<"Please enter a "<<len<<" rows by 5 columns matrix:"<<endl;forint i=0;i<len;i+fo
28、rint j=0;j<5;j+/cin>>sij;cin>>*s+ij;Please enter a 4 rows by 5 columns matrix:1 2 3 4 510 20 30 40 5011 22 33 44 55100 200 300 400 5001 2 3 4 510 20 30 40 5011 22 33 44 55100 200 300 400 5006.4 字符串与指针1.用字符数组存放一个字符串例6.10#include <iostream.h>void mainchar str="I love CHINA!&q
29、uot; 0cout<<str<<endl;I love CHINA!2. 用字符串变量存放字符串例6.11#include <iostream>#include <string>using namespace std;void mainstring str="I love CHINA!"cout<<str<<endl;I love CHINA!4. 用字符指针指向一个字符串例6.12#include <iostream>using namespace std;void mainchar *
30、str="I love CHINA!"cout<<str<<endl;I love CHINA!例6.13 将字符串str1复制为字符串str2#include <iostream>using namespace std;void mainchar str1="I love CHINA!"char str220,*p1,*p2;p1=str1;p2=str2;for;*p1!='0'p1+,p2+*p2=*p1;*p2='0'cout<<"str1 is "
31、;<<str1<<endl;cout<<"str2 is "<<str2<<endl;str1 is I love CHINA!str2 is I love CHINA!字符串常量的类型是char,在内存开拓了一个字符数组用来存储该字符串常量。一个字符串常量可以作为操作数来初始化一个字符指针,例如: char * ps =string;这时,变量ps中保存的是串string的第一个元素的地址,在程序中,也可以直接把一个字符串常量赋给一个字符指针,例如: char * ps; ps = “string;在赋值过程中,
32、并不是把字符串复制到指针中,而是将存储字符串的内存的首地址赋给指针,所以指针ps指向字符串的首字符s。下面的程序用于演示上面介绍的内容。#include <iostream.h>void mainchar str="Program"char *ps;ps=str;while *ps!='0'cout<<*ps+<<" "cout<<endl;ps="hello"while *pscout<<*ps+<<" "cout<&l
33、t;endl;cout<<str<<endl;cout<<ps<<endl;cout<<ps-2<<endl;P r o g r a mh e l l oProgramlo当字符0被用作操作数时,它被转换成0。即 0和0值相等,但前者的类型为char,而后者的类型为int.所以语句 while * ps!= 0可以写成 while * ps字符串的长度:#include<iostream.h>int strlenconst char *s/返回字符串s的长度int len=0;while*s+len+;retu
34、rn len;void mainchar buf80;cout<<"Enter a word:"cin>>buf;cout<<"The length of string "" <<buf<<"" is "<<strlenbuf<<endl;Enter a word:abcdeThe length of string "abcde" is 5字符串的拷贝和连接:#include<iostream.h>c
35、har * strcpychar *dest,const char *src/字符串拷贝char *temp = dest;while*dest+=*src+ /dest 和 src 的指针虽然改变; /但不影响主程序的指针值return temp;char * strcatchar *dest,const char *src/字符串连接char *temp = dest;while*dest+;dest-;while*dest+=*src+;return temp;void mainchar first40,second40,third40;char result80;cout<<
36、;"Enter first word:"cin>>first;cout<<"Enter second word:"cin>>second;cout<<"Enter third word:"cin>>third;cout<<strcpyresult,first;cout<<endl;cout<<strcatresult,second;cout<<endl;cout<<strcatresult,third;cout<
37、;<endl;cout<<result<<endl;Enter first word:1111Enter second word:2222Enter third word:3333111111112222111122223333111122223333注意:假设忘记为整个目的串包括null字符在缓冲区中分配足够内存,strcat和strcpy函数可能有害于程序,它可能越界删除其它数据,可使程序失败。字符串比较:#include<iostream.h>int strcmpconst char *s1,const char *s2/字符串比较/返回值 &q
38、uot;<0 s1小于s2" "=0 s1等于s2" ">0 s1大于s2" for;*s1=*s2;s1+,s2+if!*s1return 0;return *s1-*s2;void mainchar first40,second40;cout<<"Enter first word:"cin>>first;cout<<"Enter second word:"cin>>second;cout<<strcmpfirst,second&l
39、t;<endl;Enter first word:abcdeEnter second word:abfde-3系统在头文件string.h中说明了许多用于对串进展处理的函数,可以使用系统函数strlen得到一个串的长度。函数strlen使用一个串作为它的形参返回unsigned类型的值。但串的长度不包括字符 0,使用函数strlen和使用运算符sizeof时得到的结果相差1。系统函数提供了许多字符串操作,例如strcpy用于将一个串拷贝到另一个串中,函数strcat用于连接两个串,函数strcmp用于比较两个串等等。字符指针的空间使用第一种:使用字符数组的空间#include<io
40、stream.h>#include<string.h>mainchar *s1;char s28="ABCDEFG"s1=s2;/将地址s2赋给地址s1*s1='H'/对s1的修改就是对s2修改cout<<"s1="<<s1<<" s2="<<s2<<endl;s1=HBCDEFG s2=HBCDEFG第二种:使用字符串常量#include<iostream.h>#include<string.h>mainchar *
41、s1;char s28="ABCDEFG"s1="sadjfsaldkfjsdafjsdasdfj"strcpys1,s2;/将地址s2所指向的字符串复制到地址s1所指向的字符串*s1='K'cout<<"s1="<<s1<<" s2="<<s2<<endl;s1=KBCDEFG s2=ABCDEFG第三种:使用new和delete#include<iostream.h>#include<string.h>mainc
42、har *s1;char s28="ABCDEFG"s1=new char8;strcpys1,s2;/将地址s2所指向的字符串复制到地址s1所指向的字符串*s1='K'cout<<"s1="<<s1<<" s2="<<s2<<endl;delete s1;s1=KBCDEFG s2=ABCDEFG对字符指针和字符数组的赋值的方法第一种按单个字符的方法#include<iostream.h>#include<string.h>mainc
43、har *s1;char s28="ABCDEFG"s1=new char8;*s1='F'*s1+1='S'*s1+2='T'*s1+3='0'cout<<s1<<endl;delete s1;s21='8'cout<<s2<<endl;FSTA8CDEFG第二种使用strcpy和strcat函数的方法和字符指针的字符串常量的方法#include<iostream.h>#include<string.h>mainchar
44、*s1;char s28="ABCDEFG"/s2="BBBAAA"/错误 s2是地址常量,不能再进展赋值操作/s2=s1;/错误/strcpys1,s2;/错误,没有为s1分配内存空间。/strcpys2,"012345678901234567890123456789"/错误 地址越界s1="0123456"strcpys1,s2;cout<<s1<<endl;strcpys2,"tow"strcats2,"ijk"cout<<s2<
45、;<endl;ABCDEFGtowijk6.5 函数与指针6.5.1 用函数指针变量调用函数下面一个函数原型的说明: int funint a,int b;指向函数的指针说明如下: int*funpint a,int b;#include<iostream.h>int funint a,int b;int fun1int a,int b;void mainint x=8,y=5;int*funpint a,int b;funp=fun;cout<<funpx,y<<endl;cout<<fun<<" "<
46、;<funp<<endl;funp=fun1;cout<<funpx,y<<endl;cout<<fun1<<" "<<funp<<endl;int funint a,int breturn a+b;int fun1int a,int breturn a-b;130x00401023 0x0040102330x00401014 0x004010146.6 返回指针值的函数例 使用函数input输入一组数并返回一个指针,然后由main将这组数显示出来的例子.#include<ios
47、tream.h>void mainint num;float * data;float * inputint *n;data = input#ifdataforint i=0;i<num;i+cout<<datai<< " "cout<<endl;delete data; cout<<num<<endl;float * inputint *ncout<< "Input number:"cin>>*n;if*n<=0return 0;flo
48、at *buf =new float*n;ifbuf=0return 0;cout<<"输入"<<*n<<"个浮点数:"forint i=0;i<*n;i+cin>>bufi;return buf;Input number:2输入2个浮点数:1.1 2.21.1 2.22注意:使用input函数的函数应负责释放由input函数分配的内存。假设需要上面的函数接收用户输入一个方阵所需的数据,方阵的大小为n * 5,n由用户输入的值输入的值确定。可以定义为: float*inputint *n5;那么有 f
49、loat*buf5=new floatnum5;这个函数返回一个指向数组的指针。#include<iostream.h>void mainint num;float *data5;float*inputint *n5;data = input#ifdataforint i=0;i<num;i+forint j=0;j<5;j+cout<<dataij<< " "cout<<endl;delete data; cout<<num<<endl;float*inputint *n5
50、cout<< "Input number:"cin>>*n;if*n<=0return 0;float*buf5=new float*n5;ifbuf=0return 0;cout<<"输入"<<*n<<"行,每行5个浮点数:"<<endl;forint i=0;i<*n;i+forint j=0;j<5;j+cin>>bufij;return buf;Input number:2输入2行,每行5个浮点数:1.1 2.2 3.3 4.
51、4 5.51 2 3 4 51.1 2.2 3.3 4.4 5.51 2 3 4 52一个函数不能返回一个自动变量的地址,例如:int * fun int a10;/.return a; void mainint * p;p=fun;6.7 指针数组和指向指针的指针假设一个数组,其元素均为指针类型的数据,该数组称为指针数组.类型名 *数组名数组长度int* pa2;在解释变量说明语句中变量的类型时,说明符的优先级高于*,即先解释,再解释*,所以,pa的类型被表示为 pa2*int即pa是有两个元素的数组,每个元素是个指向int类型的指针。下面的程序说明指针数组的使用:#include<i
52、ostream.h>void main int a23=2,4,6,8,10,12;int* pa2;pa0=a0;pa1=a1;forint i=0; i<2; i+forint j=0;j<3;j+cout<< "a"<<i<<""<<j<<"="<<*pai+j<<" "/cout<< "a"<<i<<""<<j<&
53、lt;"="<<paij<<" "a00=2 a01=4 a02=6 a10=8 a11=10 a12=12例6.15 假设干字符串按字母顺序由小到大输出#include<iostream>using namespace std;void mainvoid sortchar *name,int n;void printchar *name,int n;char *name="BASIC","FORTRAN","C+","Pascal",&q
54、uot;COBOL"int n=5;sortname,n;printname,n;void sortchar *name,int nchar *temp;int i,j,k;fori=0;i<n-1;i+k=i;forj=i+1;j<n;j+ifstrcmpnamek,namej>0k=j;ifk!=itemp=namei;namei=namek;namek=temp;void printchar *name,int nint i;fori=0;i<n;i+cout<<namei<<endl;BASICC+COBOLFORTRANPas
55、cal6.7.2 指向指针的指针char *p;/自右至左例6.16 指向字符型数据的指针变量#include<iostream>using namespace std;void mainchar *p;char *name="BASIC","FORTRAN","C+","Pascal","COBOL"p=name+2;cout<<*p<<endl;cout<<*p<<endl;C+C6.9 引用包含一种与指针有关的特性,这一特性称为引
56、用。引用产生另一变量的别名,因此可以通过引用来传递参数给函数。6.9.1 什么是变量的引用引用说明:引用运算符&用于定义一个引用。假设这个引用不是用函数的参数或返回值,那么在说明时必须进展初始化。例如: int num=50; /这个变量必须赋值 int &ref=num;ref被说明为引用一个整型的变量,所以使用int类型的变量num给其置初始值,我们称int为ref的引用类型。下面程序说明引用的使用。6.9.2 引用的简单使用#include<iostream.h>void mainint num=500;int& ref =num;ref =ref+1
57、00;cout<< “num=<<num<<endl;num=num+50;cout<< “ref=<<ref<<endl;引用不是变量,在程序中对引用的存取都是对它所引用的变量的存取,引用本质上是为另一个变量建立别名。上述程序的输出是: num=600; ref=650;可以说明对指针的引用。例如:int *a;int *&p=a;int b;p=&b ; /a 指向变量b实现程序如下:#include<iostream.h>void mainint *a;int c=8;a=&c;c
58、out<<*a<<endl;/输出8int *&p=a;cout<<*p<<endl; /输出8int b;b=9;p = &b ; /a 指向变量bcout<<*a<<endl; /输出9889当使用&运算符取一个引用的地址时,其值为所引用的变量的地址,例如:#include<iostream.h>void mainint num=50;int& ref=num;int* p =&ref;/用引用给指针赋值cout<<p<<" &quo
59、t;<<&num<<" "<<&ref<<endl;那么p 中保存的变量num的地址。可以用一个引用初使化另一个引用,例如#include<iostream.h>void mainint num=50;int& ref1=num;int& ref2=ref1;ref2=100; /num被修改为100cout<<num<<endl;其中ref2也是对num的引用。下面的程序使用引用所建立的变量的一个名字用引用为用new建立的变量命名:#include<i
60、ostream.h>void mainint& ref =* new int10;cout<<ref<<endl;ref=15;cout<<ref<<endl;delete &ref ;其中ref是为new所建立的变量的名字,&ref是该变量的地址,所以将它用作delete 操作符来删除该变量。6.9.3 引用作为函数参数例6.18 要求将变量i和j的值互换。下面的程序无法实现此要求。#include<iostream.h>void mainvoid swapint,int;int i=3,j=5;swapi,j;cout<<"i="<<i<&
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年公司长期发展战略与风险管理的结合试题及答案
- 2025届河南省郑州市中学牟县八年级数学第二学期期末学业水平测试模拟试题含解析
- 用户数据分析与商业决策的关系的试题及答案
- 信息技术对社会的影响分析试题及答案
- 名师引领与教学示范计划
- 贵州省黔西南兴仁市黔龙学校2025届七下数学期末学业水平测试模拟试题含解析
- 通讯行业月度个人工作计划
- 时间管理在工作中的重要性计划
- 物流行业提升效率策略计划
- 城市交通绿地规划重点基础知识点
- 十二木卡姆课件
- 全面轮机英语专业词汇
- 安徽工贸职业技术学院辅导员考试题库
- 光伏系统调试方案
- 广东省珠海市电工等级低压电工作业
- 【国开】2023年春《互换性与技术测量》形考任务一二三四参考答案
- 徕卡v lux4中文说明书大约工作时间和可拍摄图像数量
- 英语演讲知到章节答案智慧树2023年哈尔滨工程大学
- 危险化学品(柴油)储运安全管理考试试题及答案
- 2023年下半年软件设计师上午真题及参考答案
- 中华优秀传统文化智慧树知到答案章节测试2023年青岛黄海学院
评论
0/150
提交评论