题目描述
给定一个只包含大写字母和小写字母的字符串,请将其中所有的小写字母转换成大写字母后将字符串输出。
输入描述
输入一行包含一个字符串。
输出描述
输出转换成大写后的字符串。
输入输出样例
示例
输入
LanQiao
输出
LANQIAO
评测用例规模与约定
对于所有评测用例,字符串的长度不超过 100。
运行限制
最大运行时间:1s
最大运行内存: 256M
所需变量
char arr[100];//用于接收每个字符
int i = 0;//循环变量,初始化为0
思路:因为是字符数组,因此我们要知道判断终止条件
while(~scanf("%c",&arr[i])){if(arr[i] == '\n'){break;}
得到整个字符串后,我们的做法就是对于每个小写字母我们都将其变成大写字母!
if(arr[i]>='a'&&arr[i]<='z'){arr[i] -= 32;}
最后将每个输入的数都把小写字母都变成大写字母后,我们就将每个字符都输出出来就可以!
代码如下(编译器是dev,语言是C语言):
做法一(C语言):
#include <iostream>
using namespace std;
#include<string.h>
int main()
{char arr[100];int i = 0;while(~scanf("%c",&arr[i])){if(arr[i] == '\n'){break;}if(arr[i]>='a'&&arr[i]<='z'){arr[i] -= 32;}i++;}for(int j = 0;j<i;j++){printf("%c",arr[j]);}printf("\n");return 0;
}
做法二(C++):
#include <iostream>
using namespace std;
#include<string.h>
int main()
{string a;cin>>a;for(int i = 0;i<a.length();i++){if(a[i]>='a'&&a[i]<='z'){a[i] -= 32;}}cout<<a<<endl;return 0;
}