问题
填空题
以下程序中函数void strol(char xx[])的功能是:将双指向的字符数组内的字符串中所有单词倒排 (即:第一个单词与最后一个单词交换,第二个单词与倒数第二个单词交换,其他单词依次类推。单词之间用空格或标点符号分隔).倒排后的单词之间用空格分隔;最后把已处理的字符串仍存储在xx指向的数组中。例如,若数组中原字符串为"I am a student".则输出应为"student a am I"。
#include
#include
#include
void strol(char xx[])
{
int i,j,k,n=0;
char t[80];
j=strlen(xx)-1;
t[0]=’\0’;
while(j>0)
{while(isalpha(xx[j])==0&&j>=0)j--;
k= ___(23)___;
while(isalpha(xx[j])&&j>=0)j--;
for(i=j+1;i<=k;i++)
t[n++]=___(24)___;
t[n++]=’ ’;
}
t[n]=’\0’;
strcpy(xx,___(25)___);
}
void main()
{char s[80]="I am a student....";
strol(___(26)___);
puts(s);
}
答案
参考答案:(23)j (24)xx[i] (25)t (26)s