c语言指针的一般问题

编写程序,定义N个元素的实型数组a(N是符号常量),定义指向这种数组元素的指针p。用指针p和scanf函数获取用户输入的N个数值存储在数组a中。用指针p求数组a中的最大值并输出。用指针p输出数组a的元素。
环境要求:vs c++ 2010

供参考:

#include<stdio.h>
#define N 10
int main()
{
    double a[N],*p=a,max;
    int  i;
    for(i=0;i<N;i++)
        scanf("%lf",p+i);
    max = a[0];
    for(i=0;i<N;i++)
    {
        printf("%.2f ",*(p+i));
        if(max < *(p+i)) max = *(p+i);
    }
    printf("\nmax=%.2f",max);
    return 0;
}