求 一道c语言题目

求高手指点 一道c语言题目
#include <stdio.h>
void fun(int a, int b)
{ int t;
  t=a; a=b; b=t;
}
main()
{ int c[10]={1,2,3,4,5,6,7,8,9,0},i;
  for(i=0;i<10;i+=2) fun(c[i],c[i+1]);
  for(i=0;i<10;i++) printf("%d,",c[i]);
  printf("\n");
}
答案是:1,2,3,4,5,6,7,8,9,0, 为什么不是2,1,4,3,6,5,8,7,0,9 求解惑?

------解决方案--------------------
C/C++ code

#include <stdio.h>
void fun(int a, int b)//副本传值
{
    int t;
    t=a; 
    a=b; 
    b=t;
}
void fun1( int *a, int *b )//指针传值
{
    int t;
    t = *a;
    *a = *b;
    *b = t;
}
void fun2( int &a, int &b )//引用传值
{
    int t;
    t = a;
    a = b;
    b = t;
}
int main()
{ 
    int c[10]={1,2,3,4,5,6,7,8,9,0},i;
    for(i=0;i<10;i+=2) 
        fun(c[i],c[i+1]);
    for(i=0;i<10;i++) 
        printf("%d,",c[i]);
    printf("\n");

    int c1[10]={1,2,3,4,5,6,7,8,9,0};
    for(i=0;i<10;i+=2) 
        fun1(&c1[i],&c1[i+1]);
    for(i=0;i<10;i++) 
        printf("%d,",c1[i]);
    printf("\n");

    int c2[10]={1,2,3,4,5,6,7,8,9,0};
    for(i=0;i<10;i+=2) 
        fun2(c2[i],c2[i+1]);
    for(i=0;i<10;i++) 
        printf("%d,",c2[i]);
    printf("\n");
    return 0;
}