#include
#include
using namespace std;
int main()
{
string s;
getline(cin,s);
for (int i = 0; i < s.length(); i++)
{
if (s[i]>=97&&s[i]<=122)
{
s[i] -= 32;
}
}
cout << s << endl;
}
查看ASCII码表,对应字母大小写直接相差32,这是关键点
#include <stdio.h>
int main()
{
char c[500];
int i;
printf("请输入一串字符串");
gets(c);
for(i=0;c[i];i++)
{
if(c[i]>='a'&&c[i]<='z')
c[i]-=32;
}
puts(c);
return 0;
}
这是C++
#include <iostream>
using namespace std;
int main()
{
char c[500];
int i;
printf("请输入一串字符串");
cin >> c;
for(i=0;c[i];i++)
{
if(c[i]>='a'&&c[i]<='z')
c[i]-=32;
}
cout << c;
return 0;
}