void main()
{
int j,k,a[12],*p;
for(j=0;j<12;j++)
scanf("%d",p++);
for(j=0;j<12;j++)
{
printf("%d",*p++);
if(j%4==0)
printf("\n");
}
}
本函数是用指针法输入12个数,但在调试时出现了错误,请大家看看,帮忙分析一下~~~
----------------解决方案--------------------------------------------------------
指针先要指向数组.......
----------------解决方案--------------------------------------------------------
行不行把完整的程序写出来
指针刚学没几天
----------------解决方案--------------------------------------------------------
#include<stdio.h>
void main()
{
int a[12];
int j;
int *p;
p = a;
system("cls");
for(j=0;j<12;j++)
{
printf("input number:\n");
scanf("%d",&a[j]);
p = &a[j];
p++;
}
p = a;
for(j=0;j<12;j++)
{
printf("a[%d]=%d ",j,*p);
if(j%4==0)
printf("\n");
p++;
}
}
----------------解决方案--------------------------------------------------------
谢谢,虽然有些地方看不太懂,但调试成功了 重新修改了一下 加黄色的地方不太明白,为什么要两次呢???
#include<stdio.h>
void main()
{
int a[12];j;int *p;
p=a;
for(j=0;j<12;j++)
{
scanf("%d",&a[j]);
p = &a[j];
p++;
} p=a;
for(j=0;j<12;j++)
{
printf("%5d",*p);
if(j%4==3)
printf("\n");
p++;
}
}
----------------解决方案--------------------------------------------------------
----------------解决方案--------------------------------------------------------