|
楼主 |
发表于 2006-6-17 22:01
|
显示全部楼层
既然楼上这样说,我就改一下!
- //相当于strlen()
- int getLength(char str[])
- {
- int i=0;
- while(str[i]!='\0')i++;
- return i;
- }
- //相当于strcat
- void stringCat(char *a,char*b)
- {
- int len,i=0;
- len=getLength(a);
- while (b[i]!='\0')
- {
- a[len+i]=b[i];
- i++;
- }
- a[len+i]='\0';
- }
- //
- void reverseWord(char*src,char*dest)
- {
- int i,len;
- char*p;
- len=strlen(src);
- p=src+len-1;
- *dest='\0';
- for(i=0;i<len;i++)
- if((*(p-i))==' ')
- {
- stringCat(dest,(p-i+1));
- stringCat(dest," ");
- if(i!=len-1)
- *(p-i)='\0';
- }
- stringCat(dest,p-len+1);
- }
- int main()
- {
- char str[]="The house is blue";
- char a[getLength(str)+1];
- reverseWord(str,a);
- printf("%s\n",a);
- system("pause");
- return 0;
- }
复制代码 |
|