ACM题目1094: 字符串的输入输出处理

题目描述
字符串的输入输出处理。
输入
第一行是一个正整数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行以后,用空格或者空行进行分开输出

思路:

gets()的用法:可接受回车键之前输入的所有字符,并用'\0'替代'\n'回车键不会留在缓冲区内

puts()的用法:在输出字符串时会将'\0'自动转换为'\n'进行输出,输出完字符串后会自动换行

所有gets()和puts()用来接受前n行的指令

代码:

#include <stdio.h>
int main()
{
   int p;
   scanf("%d",&p);
   getchar();
   char s[1002];
   while(p--)
   {
      gets(s);
      puts(s);
      printf("\n");
    }
    while(scanf("%s",s)!=EOF)
   {
    printf("%s",s);
    printf("\n\n");
    }
return 0;
}

  反思:

EOF代表文件结尾标志

 

posted @ 2020-09-09 10:51  进寸欢喜  阅读(1040)  评论(0编辑  收藏  举报