输入一串字符,实现翻转

输入一串字符,实现翻转

  • 如: i am a student---->student a am i
  • 思想:先将整个字符串翻转,再分别翻转单词
#include<stdio.h>
#include<stdlib.h>
#include<string.h>

void reverse(char a[],int len)
{
	int i;
	char tmp;
	for(i=0;i<=(len-1)/2;i++)
	{
		tmp=a[i];
		a[i]=a[len-1-i];
		a[len-1-i]=tmp;
	}
}

int main()
{
	char a[50];
	int i;
	int count;
	while(gets(a))
	{
		reverse(a,strlen(a));
		count=0;
		for(i=1;i<strlen(a);i++)
		{
			if(a[i-1]!=' '&&a[i]==' ')
			{
				count++;
				reverse(&a[i-count],count);
				count=0;
			}else if(a[i-1]!=' ')
				count++;
			else 
				continue;
		}
		puts(a);
	}
	system("pause");
	return 0;
}

发布了3 篇原创文章 · 获赞 0 · 访问量 270

猜你喜欢

转载自blog.csdn.net/qq_31973359/article/details/103961309