_Phoebe__ 2022-02-04 23:27 采纳率: 96.9%
浏览 9
已结题

这个代码有个地方没有看懂 想知道是什么意思


#include<bits/stdc++.h>
#define Ll long long
using namespace std;
map<string,int>F;
string s,c;
int n,ans;
bool b[105];
string turn(string s){
    for(int i=0;i<s.length();i++)
        if(isupper(s[i]))s[i]=s[i]+'a'-'A';//s[i]=s[i]+'a'-'A是什么意思呢
    return s;
}
int main()
{
    ios::sync_with_stdio(0); 
    cin>>n;
    for(int i=1;i<=n;i++)
        cin>>s,F[turn(s)]=i;//,cout<<s<<endl;
    getline(cin,s);//这句是什么意思呢?
    getline(cin,s);

    for(int i=0;i<s.length();i++)
        if(isalpha(s[i]))c+=s[i];else{
            int x=F[turn(c)];
            if(x&&!b[x])ans++,b[x]=1;
            c="";
            if(s[i]=='.')memset(b,0,sizeof b);
        }cout<<ans;
}
  • 写回答

1条回答 默认 最新

  • _GX_ 2022-02-05 00:09
    关注

    s[i]=s[i]+'a'-'A'; 就是把大写字母转换成小写字母
    getline(cin, s);就是从输入流读入一行存到s里

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 2月13日
  • 已采纳回答 2月5日
  • 创建了问题 2月4日

悬赏问题

  • ¥15 如何在炒股软件中,爬到我想看的日k线
  • ¥15 51单片机中C语言怎么做到下面类似的功能的函数(相关搜索:c语言)
  • ¥15 seatunnel 怎么配置Elasticsearch
  • ¥15 PSCAD安装问题 ERROR: Visual Studio 2013, 2015, 2017 or 2019 is not found in the system.
  • ¥15 (标签-MATLAB|关键词-多址)
  • ¥15 关于#MATLAB#的问题,如何解决?(相关搜索:信噪比,系统容量)
  • ¥500 52810做蓝牙接受端
  • ¥15 基于PLC的三轴机械手程序
  • ¥15 多址通信方式的抗噪声性能和系统容量对比
  • ¥15 winform的chart曲线生成时有凸起