码迷,mamicode.com
首页 > 编程语言 > 详细

字符数组内容的逆序

时间:2016-04-12 07:53:12      阅读:322      评论:0      收藏:0      [点我收藏+]

标签:字符数组内容的逆序

//有一个字符数组的内容为:"student a am i", 请你将数组的内容改为"i am a student".
//要求:
//不能使用库函数。只能开辟有限个空间(空间个数和字符串的长度无关)。
//
 
#include <stdio.h>
#include <string.h>
void fanw(char *left, char *right) //把每个单词单词翻转
{
 char* pleft = left;
 char* pright = right;
 char temp;
 while (pleft < pright)
 {
  temp = *pleft;
  *pleft = *pright;
  *pright = temp;
  pleft++;
  pright--;
 }
}
void fans(char *p)              //把翻转后的单词再翻转 
{
 while (*p != ‘\0‘)
 {
  char *pst = p;
  while (*p != ‘\0‘ && *p != ‘ ‘)
  {
   p++;
  }
  fanw(pst, p - 1);
  p++;
 }
}
int main()
{
 char p[30] = "student a am i";
 int len = strlen(p);
 printf("原字符串为 : %s\n", p);
 printf("翻转后的字符串为 :");
 fanw(p, p + len - 1);
 fans(p);
 printf("%s\n", p);
 return 0;
}


字符数组内容的逆序

标签:字符数组内容的逆序

原文地址:http://10706198.blog.51cto.com/10696198/1762719

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!