新Visual C++程序设计基础 第4章 数组与指针ok.pptVIP

  • 3
  • 0
  • 约2.72万字
  • 约 112页
  • 2015-11-19 发布于广东
  • 举报

新Visual C++程序设计基础 第4章 数组与指针ok.ppt

1.一维数组的定义 一维数组定义的一般形式为:数据类型 数组名[常量表达式]; 一维数组的存储结构 一个数组的所有元素都是连续存储的 2.一维数组元素的使用 2.一维数组元素的使用 3.一维数组元素的输入和输出 一维数组程序设计举例(算法) 一维数组程序设计举例(算法) (2)折半查找法:对有序数组 void main() { const int N=10; int top,bottom,middle,x; static int a[N]={2,5,6,8,9,12,24,32,38,40}; cinx; for (top=0,bottom=N-1;top=bottom;) {middle=(top+bottom)/2; if (x==a[middle]) break; else if (xa[middle]) bottom=middle-1; else top=middle+1; } if (x==a[middle]) couta[middle]=xendl; else coutNot foundendl; } 二维数组的存储结构 2. 二维数组的使用 3.二维数组元素的输入和输出 4. 二维数组的初始化 3×3矩阵,求两条对角线元素之和 #includeiostream.h void main() { int a[3][3],i,j,sum1=0,sum2=0; for (i=0;i3;i++) for (j=0;j3;j++) cina[i][j]; for (i=0;i3;i++) { sum1+=a[i][i]; sum2+=a[i][2-i]; //a[0][2]+a[1][1]+a[2][0] } coutsum1\tsum2endl; } 1. 字符数组的定义 一维字符数组的例子 2. 字符数组的初始化 字符串结束标志‘\0’:写在程序中的字符串(常量),系统会自动将‘\0’加到字符串尾,把‘\0’作为判断字符串是否结束的标志。 5. 字符串处理函数 求字符串长度函数:strlen(s) 函数值为整数,即为字符个数 字符串拷贝函数: strcpy(s1,s2); 将s2中的字符串赋给s1 字符串连接函数: strcat(s1,s2); 连接s1和s2两个字符串赋给s1,并为函数的返回值 字符串比较函数: strcmp(s1,s2) 若s1s2,则返回一正数;若s1==s2,则返回0; 若s1s2,则返回一负数 多个字符串 一个字符串中的字符是连续存储的,要用字符数组来处理字符串。 多个字符串可用二维数组来存储。 char name[3][10]={Monica,Rebecca,Rachel}; int a; int *p=a; int i,*p; p=i; 4.2.4 指针的运算 指针变量也是一种变量,因此指针变量可以像一般变量一样作操作数参加运算。但指针变量又与一般变量不同,其内容为地址量,因此指针运算是以指针变量所持有的地址值为运算量所进行的运算,其实质是地址的运算。指针的运算包括算术运算、关系运算和赋值运算。 1. 指针的算术运算 3. 两个指针的相减:必须同类型,值是一个整数,为两个地址之间数据的个数 指针运算的例子 int a[10]={1,2,3,4,5,6,7,8,9,10},*p,*q; p=a; q=a[3]; coutq-pendl; q=p+5; cout*qendl; p=a+3; q=p+3; cout*pendl*qendl; 2. 指针的关系运算 4.3.4 多级指针与指针数组 1.多级指针 #includeiostream.h void main() { int a[2][3],*p[2],i,j; p[0]=a[0]; p[1]=a[1]; for (i=0;i2;i++) for(j=0;j3;j++) a[i][j]=(i+1)*(j+1); for (i=0;i2;i++) for(j=0;j3;j++) { cout*(p[i]+j)endl; } } 例子: 2. 二级指针处理二维数组和多个字符串 4.3.5 指针与二维数组 在实际应用中,还经常用二级指针来处理二维数组和多个字符串。我们已经知道,二级指针是指针的指针,因此可以定义一个二级指针变量并使之指向指针数组,此时我们可以利用二级指针的变化来访问指针数组中的指针,进而对指针变量指向的存储空间的数据进行处理。 2. 二级指针处理二维数组和多个字符串 二级指针变量pp指向指针数组p[3],并将二维数组各行

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档