问答题
函数fun()的功能是:交换主函数中两个变量的值。例如,若变量a中的值原为8,b中的值为3,程序运行后a中的值为3,b中的值为8。
#include<stdio.h>
/**********found**********/
void fun(int x,int y)
int t;
/**********found**********/
t=x;x=y;y=t;
main()
int a,b;
a=8;b=3;
fun(&a,&b);
printf("%d,%d/n",a,b);
【正确答案】(1)void fun(int*x,int*y) (2)t=*x;*x=*y;*y=t;
【答案解析】[解析] 本题中函数的功能是交换主函数中两个变量的值。利用临时变量存放临时交换值,实现两个变量的交换。
①主函数中“fun(&a,&b);”引用的是变量a和b的地址,所以第一个标识下的fun()函数定义中的参数应该是指针型,即“void fun(int x,int y)”改为“void fun(int*x,int*y)”。
②同理,第二个标识下的“t=x;x=y;y=t;”改为“t=*x;*x=*y;*y=t;”。
[考点] 函数定义,函数传值,指针操作。