有以下程序: void swapl(int c0[], int c1[]) {int t; t=co[o]; co[o]=o1[o]; c1[o]=t; } void swap2(int * c0, int * c1)

admin2010-09-05  35

问题 有以下程序:    void swapl(int c0[], int c1[])    {int t;    t=co[o]; co[o]=o1[o]; c1[o]=t;    }    void swap2(int * c0, int * c1)    {int t;    t=*c0; *c0=*c1; *c1=t;    }    main()    {int a[2]={3, 5}, b[2]=A{3, 5);    swapl(a, a+1); swap2(&b [0], &b[1]);    printf("%d%d%d%d\n", a[0], a[1], b[0],b[1]);    }    程序运行后的输出结果是______。

选项 A、3 5 5 3
B、5 3 3 5
C、3 5 3 5
D、5 3 5 3

答案A

解析 swapl(a,a+1)是将a,a+1的地址进行传递,运行swapl以后,a[0],a[1]的值不发生改变,而swap2(&b[0],&b[1])是将两个指针所指的元素进行传递,运行swap2后,b[0]与b[1]的值互换。
转载请注明原文地址:https://kaotiyun.com/show/lfWp777K
0

最新回复(0)