(1):找出一维数组中的最大值.已知:int a[10]={0,2,4,6,8,1,3,5,7,9};

#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]的作用就是帮助你记忆说你所指向的一维数组的长度。(不过除了与定义的二维数组的长度一致的不会警告之外 )其他的数会警告但是不影响结果。

刹那考资料来源:百度百科-数组指针

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-11-10
max=a[0];
for(i=0;i<N;i++)
{
if(max<a[i])
max=a[i];
}本回答被网友采纳
相似回答