zoukankan      html  css  js  c++  java
  • 题解 P5733 【【深基6.例1】自动修正】

    题目传送门

    分析:

    1.这道题可以说是一个字符串的练习好题。我们先来了解一下字符串。在这道题中,建议使用(string)

    (string)(C++)(java)(VB)等编程语言中的字符串,字符串是一个特殊的对象,属于引用类型。 在(java)(C#)中,(String)类对象创建后,字符串一旦初始化就不能更改,因为(string)类中所有字符串都是常量,数据是无法更改,由于(string)对象的不可变,所以可以共享。对(String)类的任何改变,都是返回一个新的(String)类对象。 (C++)标准库中(string)类以类型的形式对字符串进行封装,且包含了字符序列的处理操作。——百度百科

    2.知道了字符串是什么后,这道题目就很容易解决了。

    3.首先,我们定义一个(s),并将其输入。因为题目中说明了(s)这个字符串中不含有空格,所以既可以使用getline(cin,s);又可以使用cin>>s;

    	string s;
    	getline(cin,s);//cin>>s;
    

    4.接下来就是使用for循环来实现把小写转换为大写。这里涉及到了一个关于(ASCII)的知识,(ASCII)表如下:

    知道了(ASCII)表,这一步就不难实现了

    	for(int i=0;i<s.size();i++)
        	if(s[i]>='a' && s[i]<='z')s[i]-=32;
    

    5.输出这个改变过的字符串即可。

    	cout<<s;
    

    完整代码如下所示:

    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
    	string s;
    	getline(cin,s);
    	for(int i=0;i<s.size();i++)
    		if(s[i]>='a' && s[i]<='z')s[i]-=32;
    	cout<<s;
    	return 0;
    }
    
  • 相关阅读:
    Nginx 部署多个 web 项目(虚拟主机)
    Nginx 配置文件
    Linux 安装 nginx
    Linux 安装 tomcat
    Linux 安装 Mysql 5.7.23
    Linux 安装 jdk8
    Linux 安装 lrzsz,使用 rz、sz 上传下载文件
    springMVC 拦截器
    spring 事务
    基于Aspectj 注解实现 spring AOP
  • 原文地址:https://www.cnblogs.com/tearing/p/12371864.html
Copyright © 2011-2022 走看看