歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

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;
 }

Copyright © Linux教程網 All Rights Reserved