题库 题库

【简答题】

试题二
  阅读下列函数说明和C函数,将应填入__(n)__处的字句写在答题纸的对应栏内。
[函数2.1说明]
  函数palindrome(chars[])的功能是:判断字符串s是否为回文字符串,若是,则返回0,否则返回-1。若一个字符串顺读和倒读都一样时,称该字符串是回文字符串,例如:“LEVEL”是回文字符串,而“LEVAL”不是。
[函数2.1]
 int palindrome(char S[])
 { char *pi,*pj;
  pi=S;pj=s+strlen(S)-1:
  while ( pi<pj && __(1)__){
   pi++; pj--;
  }
  if(__ (2)__)return-1;
  else return 0;
 }
[函数2.2说明]
  函数f(char *str,char del)的功能是;将非空字符串str分割成若干个子字符串并输出,del表示分割时的标志字符。
  例如若str的值为“33123333435”,del的值为‘3’,调用此函数后,将输出三个子字符串,分别为“12”、“4”和“5”。
[函数2.2]
 void f(char*str,char del)
 { int i,j,len;
  len = strlen(str);
  i = 0;
  while (i<len){
   while (__(3)__) i++;    /*忽略连续的标志字符*/
  /*寻找从str[i]开始直到标志字符出现的一个子字符串*/
   j = i + 1;
  while (str[j] !=del && str[j] !='\0') j++;
  __ (4)__="\0";         /*给找到的字符序列置字符串结束标志*/
  printf(" %s\t",&str[i]): ’
  __ (5)__;
  }
 }

参考答案

(1)*pi == *pj
(2)pi<pj 或 *pi != *pj
(3)str[i] == del
(4)str[j]
(5) i = j+1

相关试题