首页 > 代码库 > c语言getchar清除缓存

c语言getchar清除缓存

 1 /* 
 2     编写如下函数,不使用下标运算符,返回字符串str中字符c的个数 
 3     (若不存在则为0)。  
 4 */  
 5   
 6 #include <stdio.h>  
 7   
 8 int str_chnum(const char *str, char c)  
 9 {  
10     int n = 0;  
11       
12     while (*str) {  
13         if (c == *str++)    n++;  
14     }      
15     return (n);  
16 }  
17   
18 int main(void)  
19 {  
20     char str[100];  
21     char c;  
22       
23     printf("请输入字符串:");    scanf("%s", str);   
24       
25     getchar();                   // 清除缓存   
26       
27     printf("请输入要查找的字符:");    scanf("%c", &c);  
28       
29     printf("\n字符串\"%s\"中含有%d个字符\‘%c\‘。\n", str, str_chnum(str, c), c);  
30   
31     return (0);      
32 }  

c语言getchar清除缓存