给定程序中,函数fun的功能是:对形参s所指字符串中下标为奇数的字符按ASCⅡ码大小递增排序,并将排序后下标为奇数的字符取出,存入形参p所指字符数组中,形成一个新串。 例如,形参s所指的字符串为:baawrskjghzlicda,执行后p所指字符数

admin2013-03-29  21

问题 给定程序中,函数fun的功能是:对形参s所指字符串中下标为奇数的字符按ASCⅡ码大小递增排序,并将排序后下标为奇数的字符取出,存入形参p所指字符数组中,形成一个新串。
    例如,形参s所指的字符串为:baawrskjghzlicda,执行后p所指字符数组中的字符串应为:aachjlsw。
    请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
    注意:源程序存放在考生文件夹下的BLANKI.C中。
    不得增行或删行,也不得更改程序的结构!
#include
void fun(char*s,char * p)
{  int i,j,n,x,t;
  n=0;
  for(i=0;  s!=’\0’;  i++)  n++;
  for(i=l,i/***********found***********/
    【1】  ;
/************found**********/
    for(j=   【2】   +2; j    if(S[t]>s[j])t=j;
    if(t!=i)
    {x=s;s=s[t];s[t]=X;}
    }
    for(i=l,j=0;ip[j]=s
/*********found********/
  P[j]=  【3】  ;
}
main()
{char s[80]="baawrskjghzlicda",pis:%s\n",s);
  fun(s,p);
  printf("\nThe result is:%s\n",p),
}

选项

答案(1)t=i (2)i (3)0或“\0"

解析 第一空:由审题分析可知,t记录开始的字符,数组中挑选一个最小的元素和t位置的字符交换,故第一空处应为“t=1"。
    第二空:“for(j=【2】+2;j    第三空;字符串以“\0"结束,故第三空为“\0"或0。
转载请注明原文地址:https://jikaoti.com/ti/gIn0FFFM
0

最新回复(0)