以行为单位对行中以空格或标点符号为分隔的所有单词进行倒排,同时去除标点符号,之后把已处理的字符串(应不含标点符号)仍按行重新存入字符串数组xx中。
void StrOL(void)
{
int i,j,k,m,n,ll;
char yy[80];
for(i=0;i<maxline;i++)
{ll=strlen(xx[i]);k=n=0;
for(j=ll-1;j>=0;j--)
{if(isalpha(xx[i][j]))k++;
else
{for(m=1;m<=k;m++)
yy[n++]=xx[i][j+m];
k=0;
}
if(xx[i][j]=='')yy[n++]='';
}
for(m=1;m<=k;m++)
yy[n++]=xx[i][j+m];
/*上面两行处理每行的第一个单词。如果漏写,结果显然不正确,但并不影响得分。*/
yy[n]=0;
strcpy(xx[i],yy);
}/*标准答案与此法结果相比,每行后面多一个空格。*/
}
第一考试网友情提示:如果您遇到任何疑问,请登录第一考试网模拟试题频道或添加qq:,第一考试网以“为考友服务”为宗旨,秉承“快乐学习,轻松考试!”的理念,旨在为广大考友打造一个良好、温馨的学习与交流平台,欢迎持续关注。以上是小编为大家推荐的《2010年计算机等级考试C语言上机测试题(6)》相关信息。
编辑推荐