c++转换字母大小写的方法有几种

c++转换字母大小写的方法有几种?针对这个问题,今天小编总结这篇有关字母大小写转换的文章,希望能帮助更多想解决这个问题的朋友找到更加简单易行的办法。                                                          

成都创新互联从2013年成立,是专业互联网技术服务公司,拥有项目网站建设、成都网站制作网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元龙岩做网站,已为上家服务,为龙岩各地企业和个人服务,联系电话:028-86922220

C++简介:

C++是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。C++擅长面向对象程序设计的同时,还可以进行基于过程的程序设计,因而C++就适应的问题规模而论,大小由之。

C++不仅拥有计算机高效运行的实用性特征,同时还致力于提高大规模程序的编程质量与程序设计语言的问题描述能力。

C++大小写字母转换的思路有以下几种:

思路1、根据字母的ASCII表进行转换:

c++转换字母大小写的方法有几种

由表格可以看出,对应大小写字母之间相差32,由此可以衍生出以下编程的思路:

程序1.1

#include 
using namespace std;
int main()
{
	char a[20];
	int i = 0;
	cout<<"请输入一串字符:\n";
	cin>>a;
	for(;a[i];i++)
	{
		if(a[i] >= 'a'&&a[i] <= 'z')
            a[i] -= 32;
		else if(a[i] >= 'A'&&a[i] <= 'Z')
            a[i] += 32;
	}
	for(i = 0;a[i];i++)
		cout<

程序 1. 2

#include 
using namespace std;
void main(void)
{
    char i;
    cout<<"Input,'#'for an end: "<> i;
        if ((i>=65)&&(i<=90))
        {
            i=i+32;
            cout << i;
        }
        else if((i>=97)&&(i<=122))
        {
            i=i-32;
            cout << i;
        }
        else
            cout << (int)i;
        if(i=='#')
            break;
    }
}

思路2:利用大小写字母转换函数,由此可以衍生出以下几种编程的思路:

程序2.1   简易版

#include 
using namespace std;
int main()
{
    cout<<(char)toupper(97)<<'\n';
    cout<<(char)toupper('a')<<'\n';
    cout<<(char)tolower(66)<<'\n';
    cout<<(char)tolower('B')<<'\n';
    return 0;
}

程序2.2  利用函数strupr、strlwr

#include
#include
using namespace std;
int main()
{
    //声明字符数组
    char str[80],*p;
    int i;
    //转换字符串中的小写为大写
    cout<<"将字符串中的小写字母转换为大写"<>str;
    p=strupr(str);
    cout<<"p:"<>str;
    p=strlwr(str);
    cout<<"p:"<

程序2.3  利用函数toupper、tolower

#include
#include
#include
using namespace std;
int main()
{
    vector vch;
    int n;
    char elem;
    cout<<"请输入大小写字符的个数:";
    cin>>n;
    cout<<"请输入"<>elem;
        vch.push_back(elem);
    }
    vector::iterator it = vch.begin();
    for(it;it != vch.end();++it)
 
    {
       if(*it >= 'a'&&(*it) <='z')
            *it = toupper(*it);
        else if(*it >= 'A'&& (*it) <= 'Z')
            *it = tolower(*it);
    }
    cout<<"大小写转化之后的结果:";
    vector::iterator itera = vch.begin();
    for(itera;itera != vch.end();++itera)
        cout<<*itera;
    cout<

程序2.4 利用transform和tolower及toupper进行结合

#include
#include
#include
#include
using namespace std;
int main()
{
    cout<<"请输入一个全部大写的字符串:";
    string str;
    cin>>str;
    ///转小写
    transform(str.begin(),str.end(),str.begin(),tolower);
    ///transform(wstr.begin(), wstr.end(), wstr.begin(), towlower);
    cout<<"转化为小写后为:"<>s;
    transform(s.begin(), s.end(), s.begin(), toupper);
    ///transform(wstr.begin(), wstr.end(), wstr.begin(), towupper);
    cout<<"转化为大写后为:"<

程序2.5 写成convert函数,利用|=和&=进行变换

#include 
#include 
using namespace std;
char* convert(char *src)
{
    char *p = src;
    assert(p != NULL);
    while(*p)
    {
        if ('A' <= *p && *p < 'Z')
            *p |= 0x20;
        else if ('a' <= *p && *p < 'z')
            *p &= ~0x20;
        p++;
    }
    return src;
}
int main()
{
    char src;
    cin>>src;
    convert(&src);
    cout<

看完上述内容,你们掌握c++转换字母大小写的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!


文章标题:c++转换字母大小写的方法有几种
URL分享:http://myzitong.com/article/jgjsod.html