C++把string改成全小写
急求我是初中学信息学竞赛的希望给的程序不要太复杂难懂(《C++PrimerPlus》完全看不懂)自己写的函数是这样的:voidchangechar(string&x){f...
急求 我是初中学信息学竞赛的 希望给的程序不要太复杂难懂(《C++PrimerPlus》完全看不懂)
自己写的函数是这样的:
void changechar(string &x)
{
for (short i=0; i<x.length(); i++)
if (x[i]<'a')
x[i]+=('a'-'A');
}
但是完全不起作用 展开
自己写的函数是这样的:
void changechar(string &x)
{
for (short i=0; i<x.length(); i++)
if (x[i]<'a')
x[i]+=('a'-'A');
}
但是完全不起作用 展开
2015-10-24 · 知道合伙人软件行家
关注
展开全部
C++把string改成全小写,循环遍历字符串,然后判断asc码进行转换,非字母不转换
#include <string>
#include<iostream>
using namespace std;
int main()
{
string str= "abcdADcdeFDde!@234 ";
std::cout << str << std::endl;
for(int i = 0; i < str.length(); ++i)
{
if(str[i] >= 'a' && str[i] <= 'z')
{
str[i] = str[i] - 32;
}
else if(str[i] >= 'A' && str[i] <= 'Z')
{
str[i] = str[i] + 32;
}
else
{
continue;
}
}
std::cout << str << std::endl;
return 0;
}
#include <string>
#include<iostream>
using namespace std;
int main()
{
string str= "abcdADcdeFDde!@234 ";
std::cout << str << std::endl;
for(int i = 0; i < str.length(); ++i)
{
if(str[i] >= 'a' && str[i] <= 'z')
{
str[i] = str[i] - 32;
}
else if(str[i] >= 'A' && str[i] <= 'Z')
{
str[i] = str[i] + 32;
}
else
{
continue;
}
}
std::cout << str << std::endl;
return 0;
}
展开全部
#include <algorithm>
#include <cctype>
void toLowerCase(string& str)
{
// transform in <algorithm>
transform(str.begin(),
str.end(),
str.begin(),
tolower // in <cctype>
);
}
或者
void toLowerCase(string& str)
{
for (int i = 0; i < str.length(); ++i)
str[i] = tolower(str[i]);
}
或者(你们不让用语言提供的函数吗?)
void toLowerCase(string& str)
{
for (int i = 0; i < str.length(); ++i)
if (str[i] >= 'A' && str[i] <= 'Z')
str[i] += ('a' - 'A')
}
#include <cctype>
void toLowerCase(string& str)
{
// transform in <algorithm>
transform(str.begin(),
str.end(),
str.begin(),
tolower // in <cctype>
);
}
或者
void toLowerCase(string& str)
{
for (int i = 0; i < str.length(); ++i)
str[i] = tolower(str[i]);
}
或者(你们不让用语言提供的函数吗?)
void toLowerCase(string& str)
{
for (int i = 0; i < str.length(); ++i)
if (str[i] >= 'A' && str[i] <= 'Z')
str[i] += ('a' - 'A')
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询