问题 C: 字符串的输入输出
处理时间限制: 1Sec 内存限制: 64MB
题目描述
字符串的输入输出处理。
输入
第一行是一个正整数N,最大为100。之后是多行字符串(行数大于N), 每一行字符串可能含有空格,字符数不超过1000。
输出
先将输入中的前N行字符串(可能含有空格)原样输出,再将余下的字符串(不含有空格)以空格或回车分割依次按行输出。每行输出之间输出一个空行。
样例输入
2 www.dotcpp.com DOTCPP A C M D O T CPP
样例输出
www.dotcpp.com DOTCPP A C M D O T CPP
分析:开始看着毫无头绪的一道题,到底该怎么去存储输入的字符串呢,怎么样才算是结束标志呢。
盯着样例输入看了好久突然想到可以先输入整数n,然后将 前n行直接进行换行输出,这是很简单的。
然后后面的一直进行输入,不断进行转换,遇到空格就换行,在修改了几次格式错误后也终于是AC了。
#include<stdio.h>
#include<string.h>
int main()
{
int n;
char a[110];
scanf("%d",&n);
getchar();
while(n--)
{
gets(a);
puts(a);
printf("\n");
}
while(gets(a))
{
for(int i=0;i<strlen(a);i++)
{
if(a[i]==' ')
printf("\n\n");
else
printf("%c",a[i]);
}
printf("\n\n");
}
return 0;
}