cin 不能直接读入空格,可以用getline(PAT统计字符数)

#include <iostream>
#include <cstring>
using namespace std;

int main(){
    string str;
    int a[200] = {0};
    
//    cin >> str;
    getline(cin, str);
    for(int i = 0; i < str.length(); i++){
        if(str[i] >= ‘a‘ && str[i] <= ‘z‘)
            a[str[i]]++;
        if(str[i] >= ‘A‘ && str[i] <= ‘Z‘)
            a[str[i] + 32]++;            
    }
    int max = 90;
    for(int i = ‘a‘; i <= ‘z‘; i++)
        if(a[max] < a[i])
            max = i;
    cout << (char)max << " " << a[max];
    return 0;
}

时间: 2024-11-04 11:35:04

cin 不能直接读入空格,可以用getline(PAT统计字符数)的相关文章

C++ cin不支持录入空格

如果在C++中,用cin>>str;这种方法来接收字符串那么录入的str不能包含空格,否则它会按照空格将整个字符串切分成若干段.如果你要是想输入带空格的字符串那就要用到getline()这个函数了. 示例代码如下: #include <iostream> #include <sstream> //getline 包含在 sstream 中,要include! using namespace std; int _tmain(int argc, _TCHAR* argv[]

C++学习46 getline()函数读入一行字符 一些与输入有关的istream类成员函数

getline函数的作用是从输入流中读取一行字符,其用法与带3个参数的get函数类似.即    cin.getline(字符数组(或字符指针), 字符个数n, 终止标志字符) [例13.7] 用getline函数读入一行字符. #include <iostream> using namespace std; int main( ) { char ch[20]; cout<<"enter a sentence:"<<endl; cin>>c

哈希字符串,以及getline读一行字符

1 #include<iostream> 2 #include<string> 3 using namespace std; 4 5 //字符哈希 6 int main() { 7 int char_hash[128] = { 0 }; //用字符的ASC2码来计数,这串字符,每个元素出现了几次 8 string s ; //asc2码以整数存储 9 getline(cin,s); 10 cout << s<<endl; 11 for (int i = 0;

php字符串英文文本中大写字母,小写字母,空格,标点符号的个数统计

对一段英文文本的信息,统计其中大写字母,小写字母,空格,标点符号的个数 <?php$manuscript = "Where there is a will, there is a way.";//字符串文本$smallLetter = 0;$capitalLetter = 0;$blank = 0;$punctuation = 0; $num=strlen($manuscript);$arr=str_split($manuscript);//字符串分割为数组foreach($ar

[算法竞赛入门]第二章_循环结构程序设计

第2章 循环结构程序设计 [学习内容相关章节] 2.1for循环 2.2循环结构程序设计 2.3文件操作 2.4小结与习题 [学习目标] (1)掌握for循环的使用方法: (2)掌握while循环的使用方法: (3)学会使用计算器和累加器: (4)学会用输出中间结果的方法调试: (5)学会用计时函数测试程序效率: (6)学会用重定向的方式读写文件: (7)学会fopen的方式读写文件: (8)了解算法竞赛对文件读写方式和命名的严格性: (9)记住变量在赋值之前的值是不确定的: (10)学会使用条

CSP2019考前字符串基础知识整理

一.string类 1.string的初始化 将string str 赋值为空: string str=""; string str; str.clear(); 或赋值为其他字符串: string str1="absba"; string str2("lqyz"); string s(num,"c");//生成一个字符串,包含num个"c"字符 2.string的遍历 获取第j位置的字符:char ch=s

Linux Shell 文本处理工具集锦

本文将介绍Linux下使用Shell处理文本时最常用的工具: find.grep.xargs.sort.uniq.tr.cut.paste.wc.sed.awk: 提供的例子和参数都是最常用和最为实用的: 我对shell脚本使用的原则是命令单行书写,尽量不要超过2行: 如果有更为复杂的任务需求,还是考虑python吧: find 文件查找 查找txt和pdf文件 find . ( -name "*.txt" -o -name "*.pdf" ) -print 正则方

Linux Shell 文本处理工具

Linux下使用Shell处理文本时最常用的工具: find.grep.xargs.sort.uniq.tr.cut.paste.wc.sed.awk: 提供的例子和参数都是最常用和最为实用的: 我对shell脚本使用的原则是命令单行书写,尽量不要超过2行: 如果有更为复杂的任务需求,还是考虑python吧: find 文件查找 查找txt和pdf文件  find . ( -name "*.txt" -o -name "*.pdf" ) -print 正则方式查找.

Linux Shell 文本处理工具集锦 zz

内容目录: find 文件查找 grep 文本搜索 xargs 命令行参数转换 sort 排序 uniq 消除重复行 用tr进行转换 cut 按列切分文本 paste 按列拼接文本 wc 统计行和字符的工具 sed 文本替换利器 awk 数据流处理工具 迭代文件中的行.单词和字符 本文将介绍Linux下使用Shell处理文本时最常用的工具: find.grep.xargs.sort.uniq.tr.cut.paste.wc.sed.awk: 提供的例子和参数都是最常用和最为实用的: 我对shel