- 1、本文档共93页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言程序设计基础第8章 指针课件
第八章 指针;8.1 指针;变量;8.1.1 指针变量的定义;;8.1.2 指针的基本操作;a;b;a;a;2、赋值=;输出:
10, 100;8.1.3 指针变量的初始化;8.1.3 指针变量的初始化;8.1.4 指针作为函数的参数;swap2(int *p1, int *p2)
{ int t;
t = *p1;
*p1 = *p2;
*p2 = t;
};int max(int *x, int n)
{
int m=*x;
int i;
for(i=1;in;i++)
if(x[i]m) m=x[i];
return m;
};int max(int *x, int n)
{
int m=*x;
int i;
for(i=1;in;i++)
if(*(x+i)m) m=*(x+i);
return m;
};#define N 10
Main()
{
int max(int *,int);
int a[N]={1,0,34,56,78,90,-3,675,3,12};
printf(“%d”,max(a,N));
};swap3(int *p1, int *p2)
{ int *p;
p = p1; p1 = p2; p2 = p;
};swap2(int *p1, int *p2)
{ int t;
t = *p1;
*p1 = *p2;
*p2 = t;
};例8.6-1 指针作为函数的参数;例8.6-2;例8.6-3;例7-9;例8-9;Main()
{
int day=29;
days(2007,5,day);
day;
};Int dayofyear(int year, int month, int day)
{
int k, leap;
int tab[2][13]={{0, 31, 28, 31, 30,31,30,31,31,30,31, 30,31}
{0, 31, 29, 31, 30,31,30,31,31,30,31, 30,31}};
leap=(year%4==0year%100!=0) || year %400==0;
for (k=1; kmonth; k++)
day=day+tab[leap][k];
return day;
};例8-7;例8-7;8.2 指针和数组;8.2.1 指针、数组、地址间的关系;int *ap;
ap = a[0];
ap 指向数组a的首元素;a[0];1、数组元素作为函数实参
函数形参为变量
(与变量作为函数实参相同,值传递)
2、数组名作为函数参数
由于数组名是指针常量,相当于指针作为函数的参数
数组名做为实参
形参是指针变量(数组);float average( float *array)
{ int i;
float aver,sum=0;
for(i=0; i10; i++)
sum+=array[i]; *(array+i)
aver=sum/10;
return(aver);
} ;float average( float *array)
{ int i;
float aver,sum=0;
for(i=0; i10; i++)
sum+=array[i];
aver=sum/10;
return(aver);
} ;(3) 若在函数中只处理部分数组元素,用参数指定个数;(4) 数组名做为函数的参数,在函数调用时,将实参数组首元素的地址传给形参(指针变量),因此,形参也指向实参数组的首元素。如果改变形参所指向单元的值,就是改变实参数组首元素的值。
或:形参数组和实参数组共用同一段存贮空间,如果形参数组中元素的值发生变化,实参数组中元素的值也同时发生变化。;例 8.9 冒泡法排序;i=1; 9 8 5 4 6 0
i=1
j=0: 8 9 5 4 6 0
j=1: 8 5 9 4 6 0
j=2: 8 5 4 9 6 0
j=3: 8 5 4 6 9 0
j=4: 8 5 4 6 0 9;main()
{
文档评论(0)