C语言程序求教程序运行结果

static int a[10]={1,2,3,4,5,6,7,8,9,0},*p=a;
main()
{
static int a[10];
int i;
for(i=0,p=a;i<10;i++)
sub(p++);
for(i=0,p=a;i<10;i++)
printf(" %d",*p);
}
sub(int *a)
{
*a+=2;
}
===C语言程序求教程序运行结果

main()中使用的是内部定义的数组a,不是外部的a

 #include <stdio.h>

static int a[10]={1,2,3,4,5,6,7,8,9,0},*p=a;
void sub(int *a)
{
    *a+=2;
}

void main()
{
    static int a[10];//数组各元素初始化为0
    int i;
    for(i=0,p=a;i<10;i++)
        sub(p++);//在sub函数中a数组各元素被加2
    for(i=0,p=a;i<10;i++)
        printf(" %d",*p);//输出a数组各个元素,均为2
}