有以下程序 #include <stdio.h> #include <string.h> void fun(char *s[], int n) { char *t; int i, j

admin2021-07-09  30

问题 有以下程序
     #include <stdio.h>
     #include <string.h>
     void  fun(char   *s[], int   n)
     {  char   *t;        int   i, j;
        for (i=0; i<n-1; i++)
          for (j=i+1; j<n; j++)
            if (strlen(s) > strlen(s[j]))  
            { t = s; s = s[j]; s[j] = t; }
     }
     main()
     {  char   *ss[]={"bcc","bbcc","xy", "aaaacc", "aabcc"};
        fun(ss, 5);      printf("%s,%s\n", ss[0],ss[4]);
     }
程序的运行结果是

选项 A、aaaacc,xy
B、xy,aaaacc
C、bcc,aabcc
D、aabcc,bcc

答案B

解析 函数fun(char s[ ],int n)的功能是对字符串数组的元素按照字符串的长度从小到大排序,在主函数中执行fun(ss,5)语句后,*ss[]={"xy","bcc","bbcc","aabcc","aaaacc"},ss[0],ss[4]的输出结果为xy,aaaacc。因此B选项正确。
转载请注明原文地址:https://jikaoti.com/ti/JZd0FFFM
0

最新回复(0)