C语言 gets()和scanf()函数的用法

/*1.不同点:
scanf不能接受空格、制表符Tab、回车等;
而gets能够接受空格、制表符Tab和回车等;
2.相同点:

字符串接受结束后自动加'\0'。 使用scanf("%s",&s);函数输入字符串时存在一个问题,就是如果输入了空格会认为字符串结束,空格后的字符将作为下一个输入项处理,但gets()函数将接收输入的整个字符串直到遇到换行为止*/
 
#include "stdio.h"
#include "string.h"
int l1=0,l2=0; //l1小写字母个数,l2大写字母个数
main()
{
 void str(char,int);
 char c[100];
 int length;
 printf("Please input a string");
/* scanf("%s",c);*/
 gets(c);         
 length=strlen(c);
 str(c,length);
 printf("小写字母个数:%d,大写字母个数:%d\n",l1,l2);
}
 void str(char b[],int n)
{
 int i;
 for(i=0;i<n;i++)
  if('a'<=b[i]&&b[i]<='z') l1++;
  else if('A'<=b[i]&&b[i]<='Z') l2++;
  else if(b[i]=' ') continue;
 }

相关推荐