对于字符串的处理函数gets()和puts()的结束标志有必要讨论一下

gets()函数是从标准输入设备读取字符串直到换行符结束,但是换行符会被丢弃,并且在末尾加上一个字符串结束标志 

'\0' ,而与其相对应的puts()函数是将从标准输入设备输入的字符串打印到屏幕上,但是在打印的时候它会做一件事情就是将刚刚输入时所得到 '\0'自动转换成换行符,就是在输出字符串后自动换行。
一个简单的应用:
#include<stdio.h>
#include<stdlib.h>
int main()
{
 int i = 0,j = 0;
 char arr[50][10] = {0};    //定义一个二维数组目的是对它进行初始化
 for (i = 0; i < 5; i++)      //如果这个数组很长,但是操作者想提前结束是该怎么办?
 {
  gets(arr[i]);              //使用gets()接收字符  
  if (strcmp(arr[i]," ") == 0)     //如果想停止就输入空格便停止
  {
   break;
  }
 }
 for (j = 0; j < i; j++)       //输出想得到的字符
 {
  puts(arr[j]);
 }
 system("pause");
 return 0;
}  

遇到很长的数组在循环中想提前结束的话这也是一种办法!