用C++编写代码 输入一段字符串将其中的小写字母转换成大写字母

如题所述

第1个回答  2010-04-07
//纯手打..有错勿怪
#include <string>
#include <cctype>
#include <iostream>
using namespace std;

int main()
{
string upper(string);
string str;
cout<<"输入一段字符串:"<<endl;
cin>>str;
cout<<upper(str);
system("pause");
return 0;
}
string upper(string s)
{
string temp(s);
for(int i=0;i<(int)s.size();i++)
{
temp[i]=toupper(s[i]);
}
return temp;
}
第2个回答  2010-04-08
一句话完成你需要的操作

#include <iostream>
#include <algorithm>
#include <functional>

void main()
{

std::transform(
std::istream_iterator<char>(std::cin>>std::noskipws),
std::istream_iterator<char>(),
std::ostream_iterator<char>(std::cout),
std::ptr_fun(toupper)
);

}
第3个回答  2020-03-09
#include
<stdio.h>
char
*s_to_b(char
*cc)
{
int
i
=
0;
char
p[100];
while(*cc
!=
'\0')
{
if((*cc
>=
'a')&&(*cc
<=
'z'))
{
p[i]
=
*cc
-
32;
}
else
{
p[i]
=
*cc;
}
i++;
cc++;
}
p[i]
=
'\0';
return
p;
}
void
main(
)
{
char
*b
=
NULL;
char
a[100];
printf("input
str:");
scanf("%s",a);
b=
s_to_b(a);
printf("%s\n",b);
}
第4个回答  2010-04-07
#include <stdio.h>

char *s_to_b(char *cc)
{
int i = 0;
char p[100];
while(*cc != '\0')
{
if((*cc >= 'a')&&(*cc <= 'z'))
{
p[i] = *cc - 32;
}
else
{
p[i] = *cc;
}
i++;
cc++;
}
p[i] = '\0';
return p;
}

void main( )
{
char *b = NULL;
char a[100];
printf("input str:");
scanf("%s",a);
b= s_to_b(a);
printf("%s\n",b);
}本回答被提问者采纳
第5个回答  2010-04-07
直接用strupr()
相似回答