编写程序寻找输入字符串中字符ASCII码值大的字符,统计其出现的次数
输入
输入为一个字符串,字符串以EOF(文件结束符)EOF(文件结束符)结尾,其内部包括大小写字母、换行符、空格,字符串的长度不会超过1000010000
输出
一个整型数表示次数
标准输入: h e l l o
WORLD
标准输出: 1
使用scanf输入字符串会遇到几个问题:
1、遇到空格停止输入
2、遇到回车停止输入
这导致
char a[100];
while(scanf("%s",a)!=EOF);
行不通,只会输入‘world’
以下收集到两个解决方案(本质上差不多,单个字符输入数组):
1、使用scanf:
char a[10000];
int cnt = 0;
while(scanf("%c",&a[cnt])!=EOF)
{
cnt++;
}
2、使用getchar():
char a[10000], c;
int cnt = 0;
while( ( c = getchar() ) != EOF)
{
a[ cnt++ ] = c;
}