码迷,mamicode.com
首页 > 其他好文 > 详细

HDU 1062 Text Reverse

时间:2015-03-04 17:04:08      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:c语言   acm   

/*
题目意思很简单,但是要注意空格
思路:
1、遍历一遍即把字符输出,所以需要计数器count(代表需要转置的起始位置),
i用于表示转置的结束位置
2、对于空格要特殊处理;
*/
# include <stdio.h>
# include <string.h>

int main(void)
{
	int n;
	char str[50];
	while(scanf("%d",&n) != EOF)
	{ 
		getchar();    //吸收回车符。
		while(n--)
		{
			gets(str);
			int len = strlen(str);
			int start = 0,count = 0;
			for(int i = 0; i < len; i++)
			{
				if(str[i] == 32) //等于空格
				{
					printf(" ");
					count = i + 1;
				}else
				{
					if(str[i+1]==32||str[i+1]=='\0')
					{
						for(int j = i; j >= count; j--)
						{	
							printf("%c", str[j]);	
						}
						count = i + 1;
					}
				}				
			}
			printf("\n");
		}
	}
	return 0;
}

HDU 1062 Text Reverse

标签:c语言   acm   

原文地址:http://blog.csdn.net/xu758142858/article/details/44060871

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