首页 利用数组处理批量数据

利用数组处理批量数据

举报
开通vip

利用数组处理批量数据null第六章第六章null问题:给一组数排序,这组 数该 如何存放呢??? 这些数据如何存放才便于排序188888888881111111111111118888888888 本章要点 本章要点掌握一维、二维数组的定义和引用方法、存储结构和初始化方法。 掌握有关一维数组的有关算法 掌握数组的运算。主要内容主要内容6.1 为什么要用数组 6.2 定义和引用一维数组 6.3 二维数组的定义和引用 6.4 字符数组 6.5 提高部分6.1 为什么要用数组6.1 为什么要用数组 C语言为这些数据,提供了一种构造数据类...

利用数组处理批量数据
null第六章第六章null问题:给一组数排序,这组 数该 如何存放呢??? 这些数据如何存放才便于排序188888888881111111111111118888888888 本章要点 本章要点掌握一维、二维数组的定义和引用 方法 快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载 、存储结构和初始化方法。 掌握有关一维数组的有关算法 掌握数组的运算。主要内容主要内容6.1 为什么要用数组 6.2 定义和引用一维数组 6.3 二维数组的定义和引用 6.4 字符数组 6.5 提高部分6.1 为什么要用数组6.1 为什么要用数组 C语言为这些数据,提供了一种构造数据类型:数组。所谓数组就是一组具有相同数据类型的数据的有序集合。一个班学生的学习成绩 一行文字 一个矩阵 这些数据的特点是: 1、具有相同的数据类型 2、使用过程中需要保留原始数据null1.一维数组的定义格式为: 类型说明符 数组名[常量表达式]; 例如: int a[10]; 它表示定义了一个整形数组,数组名为a,此数组有10个元素。 6.2 定义和引用一维数组 6.2.1 定义一维数组说明: 1.数组名定名规则和变量名相同,遵循标识符定名规则。null2.在定义数组时,需要指定数组中元素的个数,方括弧中的常量表达式用来表示元素的个数,即数组长度。 3.常量表达式中可以包括常量和符号常量,但不能包含变量。也就是说,C语言不允许对数组的大小作动态定义,即数组的大小不依赖于程序运行过程中变量的值。null例如: int n; scanf(“%d″,&n); /*在程序中临时输入数 组的大小 */ int a[n];数组说明中其他常见的错误: ① float a[0]; /* 数组大小为0没有意义 */ ② int b(2)(3); /* 不能使用圆括号 */ ③ int k, a[k]; /* 不能用变量说明数组大小*/ null注意: 定义数组时用到的“数组名[常量表达式]” 和引用数组元素时用到的“数组名[下标]” 是有区别的。 例如∶ int a[10]; t=a[6]; 6.2 一维数组的定义和引用6.2.2 引用一维数组元素1.数组元素的引用方式: 数组名[下标] 下标可以是整型常量或整型表达式。 例如: a[0]=a[5]+a[7]-a[2*3]null2.一维数组元素引用的程序实例例题 6.1 引用数组元素。利用循环给数组元素a[0]~a[9]赋值为0~9,然后按逆序输出各元素的值解题思路 循环给数组元素a[0] ~a[9]赋值0~9,这样,然后按a[9]到a[0]的顺序输出各元素的值。null2.一维数组元素引用的程序实例#include void main() { int i,a[10]; for (i=0; i<=9;i++) a[i]=i; for(i=9;i>=0; i--) printf("%d ″,a[i]); printf("\n″); } 运行结果如下: 9 8 7 6 5 4 3 2 1 0 说明:1、第一个for循环的作用是给a数组中的元素赋值。 2、第2个for循环的作用是所按逆序输出a数组中的10个元素 编写程序null对数组元素初始化的实现方法: 1.在定义数组时对数组元素赋以初值。 例如:int a[10]={0,1,2,3,4,5,6,7,8,9}; 将数组元素的初值依次放在一对花括弧内。经过上面的定义和初始化之后,a[0]=0,a[1]=1,a[2]=2,a[3]=3,a[4]=4,a[5]=5,a[6]=6,a[7]=7,a[8]=8,a[9]=9。 6.2 一维数组的定义和引用 6.2.3 一维数组的初始化null 3. 如果想使一个数组中全部元素值为0,可以写成: int a[10]={0,0,0,0,0,0,0,0,0,0}; 或 int a[10]={0}; 2. 可以只给一部分元素赋值。 例如: int a[10]={0,1,2,3,4}; 定义a数组有10个元素,但花括弧内只提供5个初值,这表示只给前面5个元素赋初值,后5个元素值为0。null4. 在对全部数组元素赋初值时,由于数据的个数已经确定,因此可以不指定数组长度。 例如:int a[5]={1,2,3,4,5}; 也可以写成 int a[]={1,2,3,4,5}; int a[10]={1,2,3,4,5}; 只初始化前5个元素,后5个元素为0。nullFibonacci数列公式:已知: a1=a2=1,an=an-1+an-2 即:1,1,2,3,5,8,13 建立一个数组,将数列中第1个数放在数组第1个的元素中,数列第2个数放在数组第2个的元素中,……。 6.2 一维数组的定义和引用 6.2.4 一维数组程序举例例题 6.2 用数组来处理求Fibonacci数列问题。 解题思路null程序实例: #include void main() { int i; int f[20]={1,1};6.2 一维数组的定义和引用 6.2.4 一维数组程序举例编写程序nullfor(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]) } /*For循环结束*/ } /*程序结束*/运行结果如下: 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765if语句用来控制换行,每行输出5个数据。null例题 6.3 假如有n个人,各人年龄不同,希望按年龄将他们从小到大排列。 解题思路 这种问题称为数的排序(sort)。排序的原则有两 类,一类是“升序”,从小到大;一类是“降序”,从大到小。我们可以把这个题目抽象为一般形式: 对n个数按升序排列 对一组数据进行排序的方法很多,本例介绍用“起泡法”排序。“起泡法”的思路是如下null 经过第一趟(共5次比较与交换)后,最大的数9已“沉底” 。然后进行对余下的前面5个数第二趟比较,null如果有n个数,则要进行n-1趟比较。在第1趟比较中要进行n-1次两两比较,在第j趟比较中要进行n-j次两两比较。null程序流程图如下:null#include void main() { int a[10]; int i,j,t; printf(″input 10 numbers :\n″); for (i=0;i<10;i++) scanf("%d",&a[i]); printf("\n"); 编写程序nullfor(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(″the sorted numbers :\n″); for(i=0;i<10;i++) printf(″%d ″,a[i]); printf(″\n″); }/*程序结束*/程序运行结果如下: input 10 numbers: 1 0 4 8 12 65 -76 100 -45 123↙ the sorted numbers: -76 -45 0 1 4 8 12 65 100 123说明:1、程序中实现起泡法排序算法的主要是10~13行。 2、仔细分析嵌套的for语句。 6.3 二维数组的定义和引用 6.3.1 定义二维数组 6.3 二维数组的定义和引用 6.3.1 定义二维数组二维数组定义的一般形式为 类型说明符 数组名[常量表达式][常量表达式]; 例如:定义a为3×4(3行4列)的数组,b为5×10(5行10列)的数组。如下: float a[3][4],b[5][10];不能写成 float a[3,4],b[5,10]; 6.3 二维数组的定义和引用 6.3.1 定义二维数组C语言中,二维数组中元素排列的顺序是按行存放的,即在内存中先顺序存放第一行的元素,再存放第二行的元素。下图表示对a[3][4]数组存放的顺序。 a00 a01 a02 a03 a10 a11 a12 a13 a20 a21 a22 a23 6.3 二维数组的定义和引用 6.3.1 定义二维数组6.3 二维数组的定义和引用 6.3.2 引用二维数组的元素6.3 二维数组的定义和引用 6.3.2 引用二维数组的元素二维数组元素的表示形式为: 数组名[下标][下标] 例如: a[2][3] 下标可以是整型表达式,如 a[2-1][2*2-1]数组元素可以出现在表达式中,也可以被赋值 例如:b[1][2]=a[2][3]/26.3 二维数组的定义和引用 6.3.2 引用二维数组的元素常出现的错误有: int a[3][4]; /* 定义a为3×4的数组 */ ┆ a[3][4]=3; 在使用数组元素时,应该注意下标值应在已定义的数组大小的范围内。6.3 二维数组的定义和引用 6.3.2 引用二维数组的元素null可以用下面4种方法对二维数组初始化:1.分行给二维数组赋初值。 例如: int a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}}; 2.可以将所有数据写在一个花括弧内,按数组排列的顺序对各元素赋初值。 例如:int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12}; 6.3 二维数组的定义和引用 6.3.3 二维数组的初始化null3.可以对部分元素赋初值。 例如: int a[3][4]={{1},{5},{9}}; 1 0 0 0 5 0 0 0 9 0 0 0也可以对各行中的某一元素赋初值,如 int a[3][4]={{1},{0,6},{0,0,11}}; 1 0 0 0 0 6 0 0 0 0 0 11 1 0 0 0 5 6 0 0 0 0 0 0也可以只对某几行元素赋初值。如: int a[3][4]={{1},{5,6}}; null4.如果对全部元素都赋初值,则定义数组时对第一维的长度可以不指定,但第二维的长度不能省。 例如:int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};它等价于:int a[][4]={1,2,3,4,5,6,7,8,9,10,11,12};在定义时也可以只对部分元素赋初值而省略第一维的长度,但应分行赋初值。 例如:int a[][4]={{0,0,3},{},{0,10}};0 0 3 0 0 0 0 0 0 10 0 0null 6.3 二维数组的定义和引用 6.3.4 二维数组程序举例例题 6.4 将一个二维数组a的行和列的元素互换(即行列转置),存到另一个二维数组b中。 解题思路 将a数组中第i行j列元素赋给b数组中j行i列元素,例如a[0][0]赋给b[0][0],a[0][1] 赋给b[1][0],a[0][2]赋给b[2][0],……。可以用双层循环来处理,用外循环控制行的变化,内循环控制列的变化。null 6.3 二维数组的定义和引用 6.3.4 二维数组程序举例#include void main() { int a[2][3]={{1,2,3},{4,5,6}}; int b[3][2],i,j; printf(″array a:\n″); for (i=0;i<=1;i++) { for (j=0;j<=2;j++) { 编写程序null printf(″%5d″,a[i][j]); b[j][i]=a[i][j]; } printf(″\n″); } printf(″array b:\n″); for (i=0;i<=2;i++) { for(j=0;j<=1;j++) printf("%5d″,b[i][j]); printf(″\n″); } } /*程序结束*/运行结果如下: array a: 1 2 3 4 5 6 array b: 1 4 2 5     3  6 说明:如果把第7行:“for (i=0;i<2;i++)”改为“for (i=0;i<=2;i++)”,意味着什么?结果会怎样?null例题 6.5 有一个班30个学生,己知每个学生有5门课的成绩,要求输出平均成绩最高的学生的成绩以及该学生的序号。 解题思路 对本题而言,宜用二维数组,用一行中的各元素存放一个学生的成绩,即行代表学生,列代表一门课的成绩。要存放30个学生5门课的成绩,要用一个30*5的二维数组。另外,由于要比较各人的平均成绩,因此,对每个学生来说,应该存放6个数据,每人平均成绩要计算出来,并存放在数组中。这样,数组的大小就应该是30*6。 设计算法:(1)求每人平均成绩,放在数组每一行的最后一列中; (2)找出最高的平均分,和该学生的序号; (3)输出最高的平均分,和该学生的序号。null程序如下: #include void main() {int i,j,max_i; float sum,max=0; float s[6][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},{78,89,76,99.97}}; for (i=0;i<5;i++) {sum=0; /* 使sum初值为0 */ for (j=0;j<5;j++) sum=sum+s[i][j]; /* 累加序号为j的学生各门课的成绩 * s[i][5]=sum/5;} /* 求序号为j的学生各门课的的平均分 */ 编写程序nullfor (i=0;i<5;i++) if (s[i][5]>max) /* 逐个将5个学生的平均分与max比较 */ {max=s[i][5];max_i=i;} /* 如果比max大,就用序号为i的学生的平均分取代max的原值,将i的当前值保存在max_I中 */ printf("stu_order=%d\nmax=%7.2f\n",max_i,max); /* 输出最高平均分和该生的序号i */ } 运行结果如下: max=10,row=2,colum=1 说明: 1、在对数组初始化时,只对各行的前5列赋初值,第6列默认为0。 2、注意第一个for语句的范围。请思考能否不要“sum=0;”这一行?或者把这一句改放到for语句的前面? 3、第三个for语句内嵌了一个if语句,用来将5个学生的平均分逐个与max比较 6.4 字符数组 6.4.1 定义字符数组及对其初始化6.4 字符数组 6.4.1 定义字符数组及对其初始化定义方法与前面介绍的类似。例如: char c[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′;null对字符数组初始化,可逐个字符赋给数组中各元素。 例如: char c[10]={‘I’,’a’,’m’,’h’,’a’,’p’,’p’,’y’} 6.4 字符数组 6.4.1 定义字符数组及对其初始化null如果初值个数小于数组长度,则只将这些字符赋给数 组中前面那些元素,其余的元素自动定为空字符。null如果提供的初值个数与预定的数组长度相同,在定义 时可以省略数组长度,系统会自动根据初值个数确定 数组长度。char c[]={′I′,′ ′,′a′,′m′,′ ′,′h′, ′a′,′p′,′p′,′y′};数组c的长度自动定为10。 null char diamond[5][5]={{′ ′,′ ′,*′},{′ ′,′*′,′ ′,′*′},{′*′,′ ′,′ ′,′ ′,′*′},{′ ′,′*′,′ ′,′*′},{′ ′,′ ′,′*′}}定义和初始化一个二维字符数组 null6.4 字符数组 6.4.2 引用字符数组例题 6.6输出一个菱形图解题思路 先画出准备输出的菱形字符图案,它应当是5行5列,然后逐行写出其中的字符,如第1行应由2个空格字符、一个‘*’ 和2个空格字符组成。第2行由1个空格字符、‘*’、2个空格字符、‘*’ 和2个空格字符组成。依此类推。把这些字符作为初值赋给c数组。 null#include void main() { char diamond[][5]={{′ ′,′ ′,′*′},{′′,′*′,′ ′,′*′},{′*′,′ ′,′ ′,′ ′,′*′},{′ ′,′*′,′ ′,′*′},{′ ′,′ ′,′*′}}; int i,j; for (i=0;i<5;i++) { for (j=0;j<5;j++) printf(″%c″,diamond[i][j]); printf(″\n″); } }运行结果 * * * * * * * *编写程序说明:请注意怎样构成一个菱形字符数组 null6.4 字符数组 6.4.3字符串和字符串结束标志 为了测定字符串的实际长度,C语言规定了一个“字符串结束标志”——‘\0’。 字符数组并不要求它的最后一个字符为′\0′,甚至可以不包含′\0′。 例如:char c[5]={′C′,′h′,′i′,′n′,′a′};null 但是由于系统对字符串常量自动加一个′\0′。因此,为了使处理方法一致,在字符数组中也常人为地加上一个′\0′。 例如:char c[6]={′C′,′h′,′i′,′n′,′a′,′\0′};6.4 字符数组 6.4.3字符串和字符串结束标志null例如: 定义了如下的字符数组∶ char c[]={“Pascal program”}; 现在,想用一个新的字符串代替原有的字符串”Pascal program” ,从键盘向字符数组输入∶Hello 如果不加′\0′的话,字符数组中的字符如下∶ Hellol program6.4 字符数组 6.4.3字符串和字符串结束标志null6.4 字符数组 6.4.4 字符数组的输入输出 字符数组的输入输出可以有两种方法: 逐个字符输入输出。用格式符“%c”输入或输出一个字符。 将整个字符串一次输入或输出。用“%s”格式符,意思是对字符串的输入输出。 null在内存中数组c的状态null说明: 1. 输出字符不包括结束符′\0′。 2.用“%s”格式符输出字符串时,printf函数中的输出项是字符数组名,而不是数组元素名。 3.如果数组长度大于字符串实际长度,也只输出到遇′\0′结束。 4.如果一个字符数组中包含一个以上′\0′,则遇第一个′\0′时输出就结束。 5.可以用scanf函数输入一个字符串。 null 如果利用一个scanf函数输入多个字符串,则在输入时以空格分隔。 例如: char strl[5],str2[5],str3[5]; scanf(″%s %s %s″,str1,str2,str3); 输入数据: How are you?  数组中未被赋值的元素的值自动置′\0′。null分析图中所示的字符数组 用8进制形式输出数组c的起始地址 printf(″%o″,c); printf(″%s″,c);6. scanf函数中的输入项如果字符数组名。不要再加地址符&,因为在C语言中数组名代表该数组的起始地址。下面写法不对: scanf(″%s″,&str);null 在程序中往往需要对字符串作某些操作处理,如把两个字符串连接起来、将两个字符串进行比较等,在C函数库中提供了一些字符串处理函数,用来实现以上功能,使用很方便。下表列出几种常用的函数。6.4 字符数组 6.4.5字符串处理函数 nullnull6.4 字符数组 6.4.6 字符数组应用举例 例题 6.7有3个字符串,要求找出其中最大者 解题思路 在字符串比较中,所谓 “大”者是指按英文字典的排列,在后面出现的为大 。把str[0]、str[1]、str[2]看作3个一维字符数组, 如同一维数组那样进行处理。今用gets函数分别读入3个字符串。经过两次比较,就可得到值最大者,把它放在一维字符数组string中。null程序如下: #include #include void main ( ) { char string[20]; char str[3][20]; int i; for (i=0;i<3;i++) gets (str[i]);编写程序nullif (strcmp(str[0],str[1])>0) strcpy(string,str[0]) else strcpy(string,str[1]); if (strcmp(str[2],string)>0) strcpy(string,str[2]); printf(″\nthe largest string is∶ \n%s\n″,string); }编写程序null运行结果如下: CHINA↙ HOLLAND↙ AMERICA↙ the largest string is∶ HOLLAND说明: 1、 在使用字符串函数时要在本程序的开头要用#include 将头文件包含进来。 2、在输入以上国名字符串时,字母前不加空格 3、这个题目也可以不采用二维数组,而设3个一维字符数组来处理。 null6.4 字符数组 6.4.6 字符数组应用举例 例题 6.8 输入一行字符,统计其中有多少个单词,单词之间用空格分隔开。 null6.4 字符数组 6.4.6 字符数组应用举例 解题思路null程序如下: #include void main() { char string[81]; int i,num=0,word=0; char c; gets(string); for (i=0;(c=string[i])!=′\ 0′;i++) 编写程序nullif(c==′ ′) word=0; else if(word==0) { word=1; num++; } printf(″There are %d words in the line.\n″,num); } 运行情况如下: I am a boy.↙ There are 4 words in the line. nullC语言规定在定义和引用二维数组时采用两对括号: 二维数组定义的一般形式为 类型说明符 数组名[常量表达式][常量表达式]; 6.5 提高部分 6.5.1为什么在定义二维数组时采用两对双括号的形式例如:定义a为3×4(3行4列)的数组,b为5×10(5行10列)的数组。如下: float a[3][4],b[5][10];这样做有什么好处呢?null注意:我们可以把二维数组看作是一种特殊的一维数组:它的元素又是一个一维数组。 例如:可以把a看作是一个一维数组,它有3个元素:a[0]、a[1]、a[2],每个元素又是一个包含4个元素的一维数组。6.5 提高部分 6.5.1为什么在定义二维数组时采用两对双括号的形式null1. gets函数 其一般形式为:gets(字符数组) 其作用是从终端输入一个字符串到字符数组,并且得到一个函数值。该函数值是字符数组的起始地址。如执行下面的函数: gets(str) 从键盘输入: Computer↙6.5 提高部分 6.5.2 C语言字符串函数的详细说明null2. puts函数 其一般形式为: puts (字符数组) 其作用是将一个字符串(以′\0′结束的字符序列)输出到终端。假如已定义str是一个字符数组名,且该数组已被初始化为"China"。则执行puts(str);其结果是在终端上输出China。null用puts函数输出的字符串中可以包含转义字符。例如: char str[]={″China\nBeijing″}; puts(str); 输出结果: China Beijing 在输出时,将字符串 结束标志′\0′ 转换成′\n′, 即输出完字符串后换行。null将输入的字符串"Computer"送给字符数组str(请注意送给数组的共有9个字符,而不是8个字符),函数值为字符数组str的起始地址。一般利用gets函数的目的是向字符数组输入一个字符串,而不大关心其函数值。 注意:用puts和gets函数只能输入或输出一个字符串,不能写成 puts(str1,str2) 或 gets(str1,str2)null3. strcat函数 其一般形式为:strcat(字符数组1,字符数组2) Strcat的作用是连接两个字符数组中的字符串,把字符串2接到字符串1的后面,结果放在字符数组1中,函数调用后得到一个函数值——字符数组1的地址。null例如: char str1[30]={″People′s Republic of ″}; char str2[]={″China″}; print(″%s″,strcat(str1,str2)); 输出: People′s Republic of China null4. strcpy函数 其一般形式为:strcpy(字符数组1,字符串2) strcpy是“字符串复制函数”。作用是将字符串2复制到字符数组1中去。例如: char str1[10],str2[]={″China″}; strcpy(str1,str2); 关于strcpy函数的几点说明关于strcpy函数的几点说明1.字符数组1必须定义得足够大,以便容纳被复制的字符串。字符数组1的长度不应小于字符串2的长度。 2.“字符数组1”必须写成数组名形式(如str1),“字符串2”可以是字符数组名,也可以是一个字符串常量。如strcpy(str1,″China″); null3.复制时连同字符串后面的′\0′一起复制到字符数组1中。 4.可以用strcpy函数将字符串2中前面若干个字符复制到字符数组1中去。例如:strcpy(str1,str2,2); 作用是将str2中前面2个字符复制到str1中去,然后再加一个‘\0’。 null5.不能用赋值语句将一个字符串常量或字符数组直接给一个字符数组。如下面两行都是不合法的: str1=″China″; str1=str2; 而只能用strcpy函数将一个字符串复制到另一个字符数组中去。用赋值语句只能将一个字符赋给一 个字符型变量或字符数组元素。如下面是合法的: char a[5],c1,c2; c1=′A′; c2=′B′; a[0]=′C′; a[1]=′h′; a[2]=′i′; a[3]=′n′; a[4]=′a′; null5. strcmp函数 其一般形式为:strcmp(字符串1,字符串2) strcmp的作用是比较字符串1和字符串2。 例如:strcmp(str1,str2); strcmp(″China″,″Korea″); strcmp(str1,″Beijing″);null比较的结果由函数值带回 (1) 如果字符串1=字符串2,函数值为0。 (2) 如果字符串1>字符串2,函数值为一正整数。 (3) 如果字符串1<字符串2,函数值为一负整数。 注意:对两个字符串比较,不能用以下形式: if(str1>str2) printf(″yes″); 而只能用 if(strcmp(str1,str2)>0) printf(″yes″);null6. strlen函数 其一般形式为:strlen (字符数组) strlen是测试字符串长度的函数。函数的值为字符串中的实际长度(不包括′\0′在内)。 例如:char str[10]={″China″}; printf(″%d″,strlen(str)); 输出结果不是10,也不是6,而是5。也可以直接测试字符串常量的长度,如strlen(″China″); null7. strlwr函数 其一般形式为:strlwr (字符串) strlwr函数的作用是将字符串中大写字母换成小写字母。 8. strupr函数 其一般形式为:strupr (字符串) strupr函数的作用是将字符串中小写字母换成大写字母。
本文档为【利用数组处理批量数据】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_021959
暂无简介~
格式:ppt
大小:711KB
软件:PowerPoint
页数:0
分类:互联网
上传时间:2014-01-03
浏览量:14