求助,代码如下,为什么a[0]到9后,会回到1呢,还有我*p等于1和9是输出咋是9个0呢,新手,求大神解释
#include<stdio.h>
int main()
{
int a[10]={1,4,6,8,10,13,15,18,19,0};
int b[3][3]={0,0,0,0,0,0,0,0,0};
int c;
int *p;p=a;
for(int i=0;i<10;i++)
printf("%d ",a[i]);
printf("\n");
l:*p+=1;
for(int i=0;i<3;i++)
for(int t=0;t<3;t++)
b[i][t]=0;
b[0][*p]=1;
for(int i=0;i<10;i++)
printf("%d ",a[i]);
printf("\n");
for(int i=0;i<3;i++)
{ for(int t=0;t<3;t++)
printf("%d ",b[i][t]);
printf("\n");
}
usleep(1000000);
goto l;
}
#include<stdio.h>
int main()
{
int a[10]={1,4,6,8,10,13,15,18,19,0};
int b[3][3]={0,0,0,0,0,0,0,0,0};
int c;
int *p;p=a;
for(int i=0;i<10;i++)
printf("%d ",a[i]);
printf("\n");
l:*p+=1;
for(int i=0;i<3;i++)
for(int t=0;t<3;t++)
b[i][t]=0;
b[0][*p]=1;
for(int i=0;i<10;i++)
printf("%d ",a[i]);
printf("\n");
for(int i=0;i<3;i++)
{ for(int t=0;t<3;t++)
printf("%d ",b[i][t]);
printf("\n");
}
usleep(1000000);
goto l;
}