《C语言与程序设计》第十讲.ppt

《C语言与程序设计》第十讲.ppt

ID:52165383

大小:2.36 MB

页数:34页

时间:2020-04-01

《C语言与程序设计》第十讲.ppt_第1页
《C语言与程序设计》第十讲.ppt_第2页
《C语言与程序设计》第十讲.ppt_第3页
《C语言与程序设计》第十讲.ppt_第4页
《C语言与程序设计》第十讲.ppt_第5页
资源描述:

《《C语言与程序设计》第十讲.ppt》由会员上传分享,免费在线阅读,更多相关内容在PPT专区-天天文库

1、C语言程序设计基础2010.9第1讲概述第2讲c程序框架第3讲数据类型与数组初步第4讲c程序设计初步(条件判别与关系运算、循环、结构变量)第5讲c程序设计初步(循环与数组的关系)第6讲教学回顾(变量、语句、函数与程序结构)第7讲函数一(概念、形参与实参、函数间的参数传递)第8讲函数二(变量值与地址、指针与数组、函数与程序设计)第9讲函数三(算法初步、指针与二维数组)第10讲指针与函数第11讲链表一(指针与链表)第12讲链表二(结构指针与链表设计)第13讲文件、算法初步课程大纲第十讲指针与函数本节要点--指针变量的概念指针一览二维数组回顾概念字符串数组指针数组指向指针的指针(二级指针)指向数

2、组的指针--数组指针二维数组二维数组的形参与实参函数与指针指针类型函数—函数返回值是指针指向函数的指针--函数指针结构指针指针与程序设计函数指针—程序设计风格练习六第四题—积分函数指针数组与switch()一个概念问题把两维数组看成一个矢量;它就是指向矢量的指针指针、数组与函数数据指针:*p二级指针:**p指向数据变量,指针的值是数据变量的地址指针概念一览指针数组:*p[]指向指针变量,它存储的值是指针变量的地址指针变量的集合,它的元素是指针数组指针:(*p)[]指向一维数组的指针,加减一个元素表示跨过整个一维数组指针函数:int*max(int,int);从函数返回的是一个指针函数指针:

3、int(*fp)(int,int);指向函数的指针,它的值是函数入口地址二维(多维)数组数组的定义数据类型 数组名[常量表达式][常量表达式];行数列数元素个数=行数*列数inta[3][2]a[0][1]a[1][0]a[1][1]a[2][0]a[2][1]014523a[0][0]a[0][0]a[0][1]a[1][0]a[1][1]a[2][0]a[2][1]intc[2][3][4]01234567………...20212223c[0][0][0]c[0][0][1]c[0][0][2]c[0][0][3]c[0][1][0]c[0][1][1]c[0][1][2]c[0][1]

4、[3]c[0][2][0]c[0][2][1]c[0][2][2]c[0][2][3]c[1][0][0]c[1][0][1]c[1][0][2]c[1][0][3]c[1][1][0]c[1][1][1]c[1][1][2]c[1][1][3]c[1][2][0]c[1][2][1]c[1][2][2]c[1][2][3]地址下标与元素二维(多维)数组元素的存放顺序因为内存是一维的,所以:二维数组:按行序优先多维数组:最右下标变化最快二维数组理解例inta[3][4];a[0][0]a[0][1]a[0][2]a[0][3]a[1][0]a[1][1]a[1][2]a[1][3]a[2]

5、[0]a[2][1]a[2][2]a[2][3]每个矢量元素a[i]由包含4个元素的一维数组组成二维数组a是由3个矢量组成a[0]a[1]a[2]行名014523a[0][1]a[0][2]a[0][3]a[1][0]a[1][1]a[0][0]a[1][3]a[2][0]a[2][1]a[2][2]a[2][3]a[1][2]67101189a[0]a[1]a[2]内存中二维数组a按行优先排列程序举例例将二维数组行列元素互换,存到另一个数组中a=123456b=142536#include"stdio.h"main(){inta[2][3]={{1,2,3},{4,5,6}};intb[

6、3][2],i,j;printf("arraya:");for(i=0;i<=1;i++){for(j=0;j<=2;j++){printf("%5d",a[i][j]);b[j][i]=a[i][j];}printf("");}printf("arrayb:");for(i=0;i<=2;i++){for(j=0;j<=1;j++)printf("%5d",b[i][j]);printf("");}}输入第i行j列数据*(a[i]+j)行元素名a[i]相当于一个指针j是在行指针上的偏移量二维数组的指针访问形式,与一维数组的指针访问完全相同,关键是找到行指针。a[i]+jc

7、harnames[4][12];01234567891011names[0]names[1]names[2]names[3]列下标行名字char_array‘’tsinghua‘’automation‘’sftoware‘’用二维字符数组处理多个字符串voidinput(chara[4][12]){for(inti=0;i<4;i++)gets(a[i]);}行下标给我们提供了简捷输入一组字符串的方法ch

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。