首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

南开百题难点破解(2)

2013-03-12 
南开百题难题破解(2)题目要求:输入一个英文句子,翻转句子中的单词顺序。但单词内的顺序不变。句子中单词空隔

南开百题难题破解(2)

题目要求:

    输入一个英文句子,翻转句子中的单词顺序。但单词内的顺序不变。句子中单词空格隔开。 void StrOL(void){int i,j,len;int start=0,end=0;char buf;for (i=0; i<maxline; i++){len=strlen(xx[i]);//该循环的作用是将行数据中的非字母数据置为空格字符,例如i am a student.运算后为i am a student t后含有空格for (j=0; j<len; j++){if (!isalpha(xx[i][j]) && xx[i][j]!=' '){xx[i][j] = ' ';}}strrev(xx[i]);//字符串倒置函数,将该行数据整体进行倒置,变为 tneduts a ma i//该段程序的作用是将以空格分隔的小字符串进行倒置for(j=0;j<len;j++){if(isalpha(xx[i][j])){start=j;//此时start指针指向twhile(isalpha(xx[i][j]))j++;end=j-1;//此时end指针指向swhile(start<end){buf=xx[i][start];xx[i][start]=xx[i][end];xx[i][end]=buf;start++;end--;}}}}}


     

     

热点排行