C语言把一个字符串中的单词逆序(难)

Posted 命数如织 当为磐石

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言把一个字符串中的单词逆序(难)相关的知识,希望对你有一定的参考价值。

Input:

输入有包括多组数据。每组数据包括一行字符串。

Output:

输出加密后的字符串。

Sample Input:
I Love You 
Sample Output:
I evoL uoY 
解析:利用数组计数,把非空格的字符记下来,空格代表一个间断,经过空格后计数要重新开始
完整代码:
#include <stdio.h>
#include <string.h>

void main()
{
	int i,j,k;
	char a[1000];
	while(gets(a) != NULL)
	{
		int l=strlen(a);
		for(i=0;i<l;i++)
		{
			k=0;
			if(a[i]>=‘a‘ && a[i]<=‘z‘ || a[i]>=‘A‘ && a[i]<=‘Z‘)
			{
				for(j=i;j<l;j++)
				{
					if(a[j]>=‘a‘ && a[j]<=‘z‘ || a[j]>=‘A‘ && a[j]<=‘Z‘)
					{
						k++;
					}else
					{
						break;
					}
				}
				int t;
				for(t=i+k-1;t>=i;t--)
				{
					printf("%c",a[t]);
				}
				i=i+k-1;
			}else
			{
				printf("%c",a[i]);
			}
		}
		printf("\n");
	}
}

  

以上是关于C语言把一个字符串中的单词逆序(难)的主要内容,如果未能解决你的问题,请参考以下文章

C语言写一个函数,实现字符串内单词逆序

求助,关于c语言的单词输出程序

c语言 输入一个字符串 (一句英文)然后将英文里所有的单词逆序 然后输出这个字符串 大神帮我改程序

C语言怎么用函数把一个字符串逆序存放,比如说原字符串是abcd,怎么将他改为dcba?

用C语言把一个数组中的值按逆序重新存放?

c语言将数组中的数逆序存放