#include<stdio.h>
#define N 10
int main()
{
int a[10]={0,2,4,6,8,1,3,5,7,9};
int i,max;
max=a[1];
for(i=1;i<N;i++)
{if max<a[i]
max=a[i];}
printf("%d",max);
return 0;
}
int main()
{
int a[10]={5,3,6,1,7,4,9,2,8,10};
int i,max,*p;
p=a;//将a数组的首地址赋给指针变量p
max=*p;//将a数组的第一个元素a[0]赋给变量max
p++;//将指针变量p指向a数组的下一个元素a
for(i=1;i<10;i++)
{
if(*p>max)
{
max=*p;
}
printf("\nmax=%d\n",max);
}
return 0;
}
扩展资料:
*(p+i)是一维数组a[i][0]的地址;
*(p+2)+3表示a[2][3]地址(第一行为0行,第一列为0列),*(*(p+2)+3)表示a[2][3]的值。
//(*p)其中的5换成其他的数字在vc++6.0环境中都无法通过编译
(*p)其中的5在上述例子中没有表示任何意思你可以换成除0以外的整数,[5]的作用就是帮助你记忆说你所指向的一维数组的长度。(不过除了与定义的二维数组的长度一致的不会警告之外 )其他的数会警告但是不影响结果。
刹那考资料来源:百度百科-数组指针