大家好,我是花无缺,一个风一样的男子,热爱各种开发技术,感谢各位大佬的阅读 !
欢迎 点赞👍 收藏⭐ 留言📝 加关注✅!
作者:huawuque404
每一个不曾起舞的日子都是对生命的辜负✨
文章目录
- P5704【深基2.例6】字母转换
- 题目描述
- 输入格式
- 输出格式
- 样例
- 样例输入
- 样例输出
- 我的题解
- 结果
- 优解1
- 优解2
- 反思总结
- 知识点
P5704【深基2.例6】字母转换
题目描述
输入一个小写字母,输出其对应的大写字母。例如输入 q[回车] 时,会输出 Q。
输入格式
无要求
输出格式
无要求
样例
样例输入
q
样例输出
Q
我的题解
//C语言
#include <stdio.h>
int main()
{
// A65,a97
char letter;
scanf("%c", &letter);
printf("%c\n", (letter - 32));
return 0;
}
结果
Accepted
优解1
//C++版
#include <bits/stdc++.h>
using namespace std;
int main(){
char ch;
scanf("%c",&ch);
//输入单个字符
printf("%c",char(int(ch)-32));
//直接改大写输出
return 0;
}
优解2
//java版
import java.util.Scanner; //导入Scanner类包
public class P5704 { //public类名与文件名要相同
public static void main(String[] args) { //测试类
try (Scanner input = new Scanner(System.in)) {
String var = input.next(); //输入一个字符型数据
char var2 = var.charAt(0); //将字符数组的第一个数据赋给char型数据var2
System.out.printf("%c", var2 - 32); //输出
}
}
}
反思总结
记住常用的ASCII码对应的十进制数,例如此题中,A的ascll值对应的十进制为65,a的ASCII值对应的十进制为97,所以当输入一个小写字母时,将小写字母减去(97-65),即32就可得到对应的大写字母。
Java中Scanner没有直接输入char型数据的方法,使用String先保存该数据,再将首元素赋给char型数据就可达到输入char数据的效果
知识点
ASCII(American Standard Code for Information Interchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统。它主要用于显示现代英语,而其扩展版本延伸美国标准信息交换码则可以部分支持其他西欧语言,并等同于国际标准ISO/IEC 646。
ASCII 由电报码发展而来。第一版标准发布于1963年 ,1967年经历了一次主要修订,最后一次更新则是在1986年,至今为止共定义了128个字符;其中33个字符无法显示(一些终端提供了扩展,使得这些字符可显示为诸如笑脸、扑克牌花式等8-bit符号),且这33个字符多数都已是陈废的控制字符。控制字符的用途主要是用来操控已经处理过的文字。在33个字符之外的是95个可显示的字符。用键盘敲下空白键所产生的空白字符也算1个可显示字符(显示为空白)。
ASCII表:
ASCII码查阅地址1ASCII码查阅地址2
🌸欢迎关注
我的博客:来和我一起成长吧! 现在关注我,以后就是老粉了(手动狗头)
🍻一起进步-刷题专栏:算法题集 📢往期回顾:
你们的点赞👍 收藏⭐ 留言📝 关注✅!
是我持续创作,输出优质内容
的最大动力!
谢谢! 欢迎大家加入QQ交流学习群589523153