[说明1] 函数void convelt(chal *a,int n)是用递归方法将一个正整数n按逆序存放到一个字符数组a中,例如,n=123,在a中的存放为’3’、’2’、’1’。 [C函数1] void convert(char *a

admin2012-03-13  41

问题 [说明1]
   函数void convelt(chal *a,int n)是用递归方法将一个正整数n按逆序存放到一个字符数组a中,例如,n=123,在a中的存放为’3’、’2’、’1’。
   [C函数1]
   void convert(char *a,int n)
   {  int i;
     if((i=n/10)!=0;  convert(    (1)   ,i);
   *a=  (2)  ;
   }
   [说明2]
   函数int index(char *s,char *t)检查字符串s中是否包含字符串t,若包含,则返回t在s中的开始位置(下标值),否则返回-1。
   [C函数2]
   int index(char *s,char *t)
{  int i,j=0;k=0;
   for(i=0;s!:’\0’;i++)
   (  for(  (3)  ;(t[k]!=’\0’)&&(s[j]!=’\0’)&&(  (4)  );j++,k++);
     if(  (5)  )  return(i);
   }
   return(-1);
}

选项

答案(1) A+1 (2) n%10+’\0’ (3) j=i,k=0 (4) t[k]==s[j] (5) t[k]==’\0’或!t[k]

解析 函数1采用递归方法将一个正整数n按逆序存放到一个字符数组a中,递归调用为convert(a+1,i),所以(1)“a+1”。按逆序输出字符保存在数组a中为*a=n%10+’\0’,即(2)填“n%10+’\0’”。
   函数2检查字符串s中是否含有字符串t是在for循环中实现的。空(3)应填“j=i,k=0”。如果两个字符串中含有相同的字符,则字符串s和字符串t都指向下一个字符,循环继续,直到字符串t结束。所以空(4)应填“t[k]=s[j]”,空(5)应填“t[k]=’\0’”或“!t[k]”。
转载请注明原文地址:https://kaotiyun.com/show/Y6jZ777K
0

最新回复(0)