《C语言——第七章数组.doc》由会员分享,可在线阅读,更多相关《C语言——第七章数组.doc(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、一维数组定义方式:类型说明符 数组名数组大小 (数组名与变量名定义规则相同)如:char c20;数组大小代表数组中元素个数,需要注意的是,数组下标从0开始,因此数组大小20的数组中最后一个元素为19。注意:C语言不允许对数组大小进行动态定义。一维数组的引用:数组名下标如:a3下标可以是常量或者表达式。如:a3、a2*5。一维数组初始化:在定义数组是进行赋值:int a5=1,2,3,4,5;只给一部分元素赋值:int a5=1,2,3;该情况下后两个元素为0。使一个数组中全部元素为0:int a5=0,0,0,0,0; 或 int a5=0;若对全部元素赋值,可不指定数组长度 :int a=
2、1,2,3,4,5,;利用数组解决fibonacci数列:关键部分即利用数组构建fibonacci数列,但不能动态定义数列大小,如下:int i,a20;a0=a1=0;for(i=2;il;i+) ai=ai-1+ai-2;“起泡法”对数组中数列进行排序:思路:将相邻两个数进行比较,将小的调到前面。具体操作:对n个数进行比较,共有需要比较n-1次,第一次比较时有n-1个相邻比较组合,将最大的数送至最后的位置,第二次比较时有n-2个相邻比较组合,将次大的数送至倒数第二个位置,以此类推,直至找到最小的数,放在最前面的位置。#includevoid main()int i,j,a10,t;for(
3、i=0;i10;i+) printf(请输入第%d个数字:,i+1);scanf(%d,&ai); for(i=0;i9;i+)for(j=0;jaj+1) t=aj; aj=aj+1; aj+1=t; printf(排序后的结果为:);for(i=0;i10;i+)printf(%d,,ai);二维数组的定义:类型说明符 数组名一维大小二维大小如: char c24;(注:最大元素为c13)引用方法同一维数组。二维数组初始化:分行赋值:int a34=1,2,3,4,5,6,7,8,9,10,11,12;将所有元素放一块赋值:int a34=1,2,3,4,5,6,7,8,9,10,11,1
4、2;(若大括号内元素小于数组最大元素值,则对数组中剩下的元素赋0)部分赋值:int a34=1,2,3在对全部元素赋值时,可省略第一维大小,但不能省略二维大小:int a4=1,2,3,4,5,6,7,8,9,10,11,12;或使用分行赋值的方法:int a4=1,2,5,9,10,11,12;具体可用以下算法检验二维数组赋值情况,放入VC+6.0编译器中使用:#includevoid main()int i,j,a4=按要求使用具体的赋值形式;for(i=0;i3;i+) for(j=0;jstr2则函数值0,若str1str2则函数值0,若str1=str2则函数值=0。strlen函数:用于测量字符数组或字符串常量的实际长度(不包括0)。strlwr和strupr函数:用于大小写转换。判断字符串中单词数量的程序:书本上P150列7.8的算法同样可用#includevoid main() int i,num=0;char c100;printf(请输入一个字符串:);gets(c);for(i=0;ci!=0;i+) if(ci!= &(ci+1= |ci+1=0) num+;printf(字符串包含单词数为:%dn,num);