c语言编程,高手请进,能够详细解析

来源:百度知道 编辑:UC知道 时间:2024/05/07 14:30:58
main()
{int va[10],vb[10],*pa,*pb,i;
pa=va;pb=vb;
for(i=0;i<3;i++,pa++,pb++)
{
pa=i;pb=2*i;
printf("%d\t%d\n",*pa,*pb);
}
pa=&va[0],pb=&vb[0];
for(i=0;i<3;i++)
{*pa=*pa+i;*pb=*pb*i;
printf("%d\t%d\n",*pa++,*pb++)
}
}
前面输入错误,应该有指针的,我要运行结果

自己找个编译器,运行一下不就知道了吗?
我个人认为是:
0 0
1 2
2 4
1 1
2 5
4 13

不过没有上机调试,具体要上机调试才好.
#include<stdio.h>
void main()
{
int va[10],vb[10],*pa,*pb,i;
pa=va;pb=vb;
for(i=0;i<3;i++,pa++,pb++)
{
*pa=i;/*va[0]=0,va[1]=a,va[2]=2*/
*pb=2*i;/*vb[0]=0,vb[1]=2,vb[2]=4*/
printf("%d\t%d\n",*pa,*pb);
}
pa=&va[0],pb=&vb[0];
for(i=0;i<3;i++)
{
*pa=*pa+i; //va[0]=0,va[1]=2,va[2]=4
*pb=*pb*i; //vb[0]=0,vb[1]=4,vb[2]=12
printf("%d\t%d\n",*pa++,*pb++);/*这里的++比*运算符低,所以是对值自加,而不是地址*/
}
}

#include<stdio.h>
void main()
{
int va[10],vb[10],*pa,*pb,i;
pa=va;pb=vb;
for(i=0;i<3;i++,pa++,pb++)
{
*pa=i;/*这应该在pa前面加*号,不能对指针赋值*/
*pb=2*i;/*这应该在pb前面加*号,不能对指针赋值*/
printf("%d\t%d\n",*pa,*pb);