定义数组int score[N]
采用指针从键盘输入数组数据
采用指针法输出数组a的全部元素
#include<stdio.h>
#define N 5
int main(){
int a[N];
int *p=a;
for(int i=0;i<N;i++){//输入操作
scanf("%d",p+i);
//等价scanf("%d",p++);
//等价于scanf("%d",&a[i]);
//等价于scanf("%d",a+i); //a代表数组首元素地址,它是一个指针型常量,程序运行期间值不变(不同于p),故不能用a++;
}
//输出方式一:用 a[i] 或用 *(a+i) ; 但不能使用a++(原因:a是指针型常量)
for(i=0;i<N;i++){
printf("%d ",a[i]);//等价于 printf("%d ",*(a+i));
}
printf("\n");
p=a;//必须把指针重新指向a的首元素
//输出方式二:用 *(p+i) 或者 *p++ ; 注意:要把指针重新指向a的首元素
for(i=0;i<N;i++){
printf("%d ",*(p+i));//等价于 printf("%d ",*p++);
}
printf("\n");
//输出方式三:用*p
for(p=a;p<(a+N);p++){
printf("%d ",*p);
}
putchar(10);//等价于printf("\n");
return 0;
}