下面的C程序是个改错题,我实在看不出哪里有错误,高手帮忙

main()
{int a=10,b=20;
printf("a=%d,b=%d\n",a,b);
swap(&a,&b);
printf("a=%d,b=%d\n",a,b);
}
swap(int p, int q)
{ int t;
t=p;p=q;q=t;}

void swap(int &p, int &q)
{ int t;
t=p;p=q;q=t;}

void main()
{int a=10,b=20;
printf("a=%d,b=%d\n",a,b);
swap(a,b);
printf("a=%d,b=%d\n",a,b);
}
错误1:C语言,如果主函数里面没声明其他函数,那么就得把函数写在主函数的前面。
错误2:你是想交换a和b的值,但是swap(&a,&b);是传入的两个变量的地址。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-08-06
swap(&a,&b);
应该将&去掉。
相似回答