有以下程序: #include #include void fun(char *8,int ml,int m2) { char t,*p; p=s+ml;s=s+m2; while(8

admin2019-01-11  23

问题 有以下程序:
    #include
    #include
    void fun(char *8,int ml,int m2)
    {  char t,*p;
    p=s+ml;s=s+m2;
    while(8    {t=*s;  *s=*p;  *p=t;
    s++;P——;
    }
    }
    main()
    {  char ss[10]="012345678";
    int n=6;  
    fun(ss,0,n一1);
    fun(ss,9,n);
    fun(ss,0,9);
    printf("%8\n",88);
    }
    程序运行后的输出结果是(    )。

选项 A、012345
B、876543210
C、876543
D、012345678

答案A

解析 fun(*ss,m1,m2)的作用是,如果m1>m2交换数组元素ss[m1],ss[m2]。因此,fun(ss,0,5)后ss的0,1,2,3,4,5,6,7,8,\0。fun(ss,9,6)后ss的0,1,2,3,4,,5,\0,8,7,6。fun(s8,0,9)后ss的0,1,2,3,4,5,\0,8,7,6。因此打印结果012345。故答案为A选项。
转载请注明原文地址:https://kaotiyun.com/show/QZxp777K
0

最新回复(0)