原题地址:1094: 字符串的输入输出处理
题目描述
字符串的输入输出处理。
输入
第一行是一个正整数N,最大为100。之后是多行字符串(行数大于N), 每一行字符串可能含有空格,字符数不超过1000。
输出
先将输入中的前N行字符串(可能含有空格)原样输出,再将余下的字符串(不含有空格)以空格或回车分割依次按行输出。每行输出之间输出一个空行。
样例输入
2
www.dotcpp.com DOTCPP
A C M
D O T CPP
样例输出
www.dotcpp.com DOTCPPA C M
D
O
T
CPP
解题思路:
主要考察gets,puts的用法。
gets()的用法:可接受回车键之前输入的所有字符,并用’\0’替代’\n’回车键不会留在缓冲区内
puts()的用法:在输出字符串时会将’\0’自动转换为’\n’进行输出,输出完字符串后会自动换行
所有gets()和puts()用来接受前n行的指令
代码:
#include<iostream>
#include<cstring>
using namespace std;
int main()
{
int n;
scanf("%d",&n);
getchar();
char s[1002];
while(n--){
gets(s);
puts(s);
printf("\n");
}
while(scanf("%s",s)!=EOF){
printf("%s",s);
printf("\n\n");
}
return 0;
}