您好,欢迎访问三七文档
Version3.0数组第七章2回顾•for循环•逗号运算符•嵌套循环•while和do-while循环•break和continue语句•exit()函数3目标•理解数组的存储机制•掌握数组的定义和使用•掌握数组的初始化•理解二维和多维数组4数组元素和索引•数组元素由索引或下标标识•数组维数由索引数决定•索引存放从0开始的整数一个包含11个元素的数组player[0]player[1]player[2]……player[10]5定义数组2-1•数组的特性必须在使用前定义–存储类型–数据类型–数组名–数组大小6定义数组2-2•数组名后接一个或多个括在方括号内的表达式,用以指定数组的维数存储类型数据类型数组名[数组长度];intplayer[11];7数组的规范•所有数组元素具有相同的类型•允许使用变量的地方都可以使用数组元素•可以使用整型表达式引用数组的元素8在C语言中使用数组2-1•即使两个数组的类型和大小相同,也不能检验其是否相等•不能直接将一个数组赋给另一个数组•不能为数组整体赋值9在C语言中使用数组2-2#includestdio.hvoidmain(){intary[10];inti,total,high;for(i=0;i10;i++){scanf(%d,&ary[i]);}high=ary[0];for(i=1;i10;i++){if(ary[i]high)high=ary[i];}for(i=0,total=0;i10;i++)total=total+ary[i];}定义赋值比较10初始化数组•自动数组中的元素需要分别初始化•extern和static数组元素自动初始化为0使用for循环为数组元素赋值#includestdio.hvoidmain(){charalpha[26];inti,j;for(i=65,j=0;i91;i++,j++){alpha[j]=i;printf(Thecharacteris%c\n,alpha[j]);}getchar();}11字符串/字符数组2-1•字符串是以”\0”结尾的字符型数组•字符串中每个字符占一个字节ary[0]ary[1]ary[2]ary[3]ary[4]#includestdio.hvoidmain(){charary[5];inti;printf(\nEnterstring:);scanf(%s,ary);printf(\nThestringis%s\n\n,ary);for(i=0;i5;i++)printf(\t%d,ary[i]);}12字符串/字符数组2-2演示:分别输入不用长度的字符串,观察并分析输出结果13字符串函数在标准头文件string.h中定义名称作用strcpy(s1,s2)将s2复制到s1strcat(s1,s2)将s2附加到s1的末尾strlen(s1)返回s1的长度strcmp(s1,s2)判断s1和s2是否相等strchr(s1,ch)返回s1中第一次出现字符ch的位置strstr(s1,s2)返回s1中第一次出现字符串s2的位置14二维数组•最常用的多维数组•可以看成是由两个一维数组组成的数组•类似于一个由行和列组成的表格二维数组的声明方式:inttemp[4][3];15二维数组的初始化3-1intary[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};ary012301234156782910111216二维数组的初始化3-2intary[3][4]={{1,2,3},{4,5,6},{7,8,9}};ary012301230145602789017二维数组的初始化3-3演示:分别用不同的初始化方法,观察并分析输出结果18数组示例2-1#includestdio.h#includestring.hvoidmain(){inti,n=0;intitem;charx[10][12];chartemp[12];clrscr();printf(Enterstring\n\n);printf(Type'END'whenover\n\n);do{printf(String%d:,n+1);scanf(%s,x[n]);}while(strcmp(x[n++],END));n=n-1;for(item=0;itemn-1;++item){for(i=item+1;in;++i){if(strcmp(x[item],x[i])0){strcpy(temp,x[item]);strcpy(x[item],x[i]);strcpy(x[i],temp);}}}printf(Recordedlistofstrings:\n);for(i=0;in;++i){printf(\nString%dis%s,i+1,x[i]);}}排序19数组示例2-2演示:运行程序,观察并分析输出结果,解释红色语句的作用20总结•定义和使用数组•初始化数组•字符串/字符数组•二维数组的概念
本文标题:C语言数组
链接地址:https://www.777doc.com/doc-3377451 .html