航电oj:首字母变大写

本题:的主要知识点是小写字母a到z是ASCLL码值是97到122,A到Z的ASCLL码值是65到90。

所以将小写转成大写只需要用**'a'减去'A'即可**(差值是32)。

要将首字母小写转成大写,要考虑字符串的首元素(s[0]),还有如果字符前一位是空格的话,证明这个字符也是首字母。

复制代码
#include<iostream>
#include<cstring>
using namespace std;
int main() {
	char s[1000];
	while (1) {
		fgets(s,sizeof(s),stdin);
		for (int i = 0; i < sizeof(s); i++) {
			if (s[i] == '0' || s[i-1] == ' ') {
				s[i] -= ('a' - 'A');
			}
		}
		printf("%s\n", s);
	}
	return 0;
}
相关推荐
没有天赋那就反复2 小时前
JAVA 静态方法
java·开发语言
Thomas_YXQ2 小时前
Unity3D在ios平台下内存的优化详解
开发语言·macos·ios·性能优化·cocoa
lhxcc_fly2 小时前
手撕简易版的智能指针
c++·智能指针实现
CodeByV2 小时前
【算法题】多源BFS
算法
咸甜适中2 小时前
rust的docx-rs库,自定义docx模版批量生成docx文档(逐行注释)
开发语言·rust·docx·docx-rs
TracyCoder1232 小时前
LeetCode Hot100(18/100)——160. 相交链表
算法·leetcode
浒畔居2 小时前
泛型编程与STL设计思想
开发语言·c++·算法
Fcy6482 小时前
C++ 异常详解
开发语言·c++·异常
机器视觉知识推荐、就业指导3 小时前
Qt 和 C++,是不是应该叫 Q++ 了?
开发语言·c++·qt