文章目录
- 首字母大写
- 字符串转换整数
一、首字母大写IO链接
本题思路:本题就是语法题
#include <bits/stdc++.h>
int main()
{
std::ios::sync_with_stdio(false);
std::cin.tie(nullptr);std::cout.tie(nullptr);
std::string str;
std::getline(std::cin,str);
for(int i=0;i<str.size();i++){
if(str[i]==' ') std::cout<<' ';//当前是空格跳过
else if(i==0) std::cout<<char(std::toupper(str[i]));//对第一个字符进行特殊处理
else if(str[i-1]==' ') std::cout<<char(std::toupper(str[i]));//如果前面一个字符是空格的话,那么说明该字符是一个单词,那么首字母需要进行大写处理
else std::cout<<str[i];
}
return 0;
}
二、字符串转换整数IO链接
本题思路: 本题是一道语法题。
#include <bits/stdc++.h>
typedef int64_t i64;
int main()
{
std::ios::sync_with_stdio(false);
std::cin.tie(nullptr);std::cout.tie(nullptr);
std::string s;
std::cin>>s;
bool flag=false;//用来判断当前数字的出现
i64 res=0;
for(auto& ch: s){
if(isdigit(ch)){
res=res*10+ch-'0';
if(!flag) flag=true;
}
else if(flag) break;//如果当前是字母就说明第一个数字可能已经产生
}
if(res>INT_MAX||!flag) std::cout<<-1<<std::endl;//超过int范围返回-1
else std::cout<<res<<std::endl;
return 0;
}