蓝桥杯-洛谷刷题-day2(C++)

目录

1.小写字母与大写字母的转换

2.使用string(额外开一章持续补充)

        i.访问字符串最后一位

3.保留N位小数输出

        i.C++侧

        ii.C语言侧

        iii.总结        

4.高精度相加

        i.各种数据类型转字符型

        ii.三元运算符

        iii.循环条件中的carry


1.小写字母与大写字母的转换

        大写从65开始,小写从97开始,之间差了32.

        输入小写,输出大写:

#include<iostream>
using namespace std;int main()
{char a;cin >> a;a = a - 32;cout << a;return 0;
}

2.使用string(额外开一章持续补充)

        i.访问字符串最后一位

        此处,只写刷题时遇到的

//需要的库
#include <string>
//定义
string s;
//获取长度
int len = s.length();

        s.length()获取s 中,有多少字符,是实际长度。

        在长度未知的情况下,可通过s[len - 1] 访问s 的最后一个字符(len取自上文代码的变量)。 

        值得注意的一个很简单但一忽略的点,当需要键盘输入string时,对string进行操作的函数一定要写在输入之后,

int main()
{string s;cin >> s;//输入之后,再操作int len = s.length();
}

3.保留N位小数输出

        i.C++侧

        需要<iomainip>库,

#include <iomanip>double t = 9;
cout << t << endl;
cout << fixed << setprecision(3) << t << endl;

         输出结果应该是:

9

9.000

        其中,cout << fixed,会让之后输出的所有东西都变为浮点型,注意是所有。

        之后,cout << setprecision(N),设置输出的浮点型小数点后保留几位,这个的影响也是所有。(precision的意思是精度)

        拓:解除fixed 的设置,只需要插入代码,cout << defaultfloat;  即可。

        拓:关于整型的多位输出,可以回顾蓝桥杯-洛谷刷题-day1(C++)

        ii.C语言侧

double x;
printf("%.3f", x);

        iii.总结        

        C++的更安全,不易报错,C语言的更直接。 

4.高精度相加

#include <iostream>  
#include <iomanip>  //操纵器,个位数字,多位输出;保留n位小数输出
#include <cmath>    //向上取整函数ceil
#include <string>using namespace std;
//大数字计算,运用字符,从末尾开始加,超过10的,只取个位进行拼接,暂存十位进入下一个循环string Add(string a, string b)
{string result;//两串的末尾指针int i = a.length() - 1;int j = b.length() - 1;//暂存十位int carry = 0;//用循环分别逐个取出字符,转换类型,进行加减while (i >= 0 || j >= 0 || carry > 0)   //有一个真就会循环,当carry不为零时,说明有多出来的十位,需要再运算{int digitA = (i >= 0) ? a[i] - '0' : 0;int digitB = (j >= 0) ? b[j] - '0' : 0;int sum = digitA + digitB + carry;//转为字符型,保留个位result = to_string(sum % 10) + result;//保留十位carry = sum / 10;i--;j--;}return result;
}int main()
{string a, b;cin >> a >> b;cout << Add(a, b);return 0;
}

C++ 中大数字相加是个很复杂的过程,需要借助字符型来实现, 

        i.各种数据类型转字符型

        to_string() 函数

        ii.三元运算符

        有效简化代码,当循环中,有两种递减或递增指标,且两个指标的大小不同,会出现一个优先到达极限时,三元运算符,可以持续调整达到极限后的指标带来的负面影响,太妙了。

        iii.循环条件中的carry

        真正地考虑到多出来的十位的具体处理,对多余项的认真处理。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/60219.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从0学习React(11)

1. 引言 上个星期的工作内容是写IT资产管理的前端页面。其实&#xff0c;尽管我之前有一些前端开发的经验&#xff0c;但并不是很多。这次让我独立完成一个页面的开发&#xff0c;刚开始时我感到无从下手。 2. 初期的困惑和焦虑 我记得在星期一和星期二的时候&#xff0c;那…

第3章 需求 3.3需求的有效传递与度量

3.3 需求的有效传递与度量 收集需求是需要投入很多工作量的&#xff0c;同时需求必须有效传递到产品端才能最终发挥价值。而需求的有效传递却是一个容易被忽视的环节。 现实中存在各种需求传递方式&#xff0c;如口头传递、邮件传递、会议传递等&#xff0c;但这些需求都未被统…

Vue2中使用firefox的pdfjs进行文件文件流预览

文章目录 1.使用场景2. 使用方式1. npm 包下载,[点击查看](https://www.npmjs.com/package/pdfjs-dist)2. 官网下载1. 放到public文件夹下面2. 官网下载地址[点我,进入官网](https://github.com/mozilla/pdf.js/tags?afterv3.3.122) 3. 代码演示4. 图片预览5. 如果遇到跨域或者…

vue3+vite 前端打包不缓存配置

最近遇到前端部署后浏览器得清缓存才能出现最新页面效果得问题 所以…按以下方式配置完打包就没啥问题了&#xff0c;原理很简单就是加个时间戳 /* eslint-disable no-undef */ import {defineConfig, loadEnv} from vite import path from path import createVitePlugins from…

RS485/RS422保护电路

由于GJB 151B没有雷击和浪涌测试要求&#xff0c;故不需要防雷器件。TVS管使用SMB6.5CA&#xff0c;共模电感选择LCHWCM-453228-510YT01&#xff0c;详细设计电路如下图所示&#xff0c;此设计可同时满足GJB 151B和DO 160G的标准。注意SMB封装的TVS管是600W&#xff0c;SMA封装…

抖音电商发布双11数据:275个品牌通过直播带货实现成交额过亿元

11月12日&#xff0c;抖音电商发布2024“抖音商城双11好物节”数据&#xff0c;呈现双11期间平台商家经营情况。 数据显示&#xff0c;大促期间&#xff0c;众多商家在抖音电商迎来生意增长。10月8日至11月11日&#xff0c;超3.3万个品牌成交额同比翻倍&#xff0c;近1.7万个品…

CKA认证 | Day1 k8s核心概念与集群搭建

第一章 Kubernetes 核心概念 1、主流的容器集群管理系统 容器编排系统&#xff1a; KubernetesSwarmMesos Marathon 2、Kubernetes介绍 Kubernetes是Google在2014年开源的一个容器集群管理系统&#xff0c;Kubernetes简称K8s。 Kubernetes用于容器化应用程序的部署&#x…

实验室集群服务器常用命令-Linux

1. 查看磁盘空间 df -h2. 查看当前文件夹下所有文件 ls查看当前文件夹下所有文件&#xff08;包括隐藏文件 ls -a3. 服务器内存相关命令 a. 查看服务器剩余内存 free -hb. 查看占用内存最大的10个进程 ps -aux | sort -k4nr | head -n 104. 批量kill进程 a. --kill某个用…

《大模型应用开发极简入门》笔记

推荐序 可略过不看。 初识GPT-4和ChatGPT LLM概述 NLP的目标是让计算机能够处理自然语言文本&#xff0c;涉及诸多任务&#xff1a; 文本分类&#xff1a;将输入文本归为预定义的类别。自动翻译&#xff1a;将文本从一种语言自动翻译成另一种语言&#xff0c;包括程序语言。…

在AutoDL上部署一个自定义的Python环境并在pycharm上使用

#AutoDL #GPU #租显卡 如何在AutoDL上部署一个自定义的Python环境 下面将会给出如何在AutoDL部署一个自定义的Python环境的详细步骤&#xff0c;希望可以帮助到同样对于显卡具有需求的同学。 注册账号 首先登陆AutoDL官网&#xff1a;https://www.gpuhub.com/register 链接…

C++ 面试问题集合

文章目录 设计模式单例 排序算法查找算法二分查找 设计模式 单例 #include <iostream> #include <string> #include <memory> #include <mutex> #include <thread>using namespace std;class SingleTon{ protected://外部不可直接操作SingleTo…

高级AI记录笔记(二)

学习位置 B站位置&#xff1a;红豆丨泥 UE AI 教程原作者Youtube位置&#xff1a;https://youtu.be/-t3PbGRazKg?siRVoaBr4476k88gct素材自备 提前将动画素材准备好 枪的武器插槽位置调整好 动画蓝图基本没什么变化 准备武器 在AI的接口蓝图中添加两个函数一个是装备武…

小型kv数据库rocksdb配合grpc实现网络访问

rocksdb相对来说比leveldb多了许多特性&#xff0c;但是对使用来说比levedb高了一大截。 rocksdb的代码在编译时需要有rocksdb服务端环境才能编译&#xff0c;windows上需要先下载vs2019编译dll后才能开始写代码。 这里不考虑windows了&#xff0c;直接使用docker环境来用 一…

汽车共享管理:SpringBoot技术的最佳实践

摘要 随着信息技术在管理上越来越深入而广泛的应用&#xff0c;管理信息系统的实施在技术上已逐步成熟。本文介绍了共享汽车管理系统的开发全过程。通过分析共享汽车管理系统管理的不足&#xff0c;创建了一个计算机管理共享汽车管理系统的方案。文章介绍了共享汽车管理系统的系…

从0开始学PHP面向对象内容之(常用魔术方法)

一、什么是魔术方法 PHP中的魔术方法是以__两个下划线开头的方法&#xff0c;这些方法提供了一种机制&#xff0c;可以在类的生命周期中拦截某些事件或者进行一些操作 二、魔术方法有哪些 一、__construct()&&__destruct() __construct()构造函数&#xff0c;__des…

蔚来Android面试题及参考答案(3万字长文)

说一说 MVP 架构,MVVM 架构 MVP(Model - View - Presenter)架构: Model:它主要负责数据的获取和存储,例如从数据库、网络或者其他数据源获取数据。模型层是独立于视图层的,它不关心数据是如何展示的,只专注于数据本身的操作。比如一个新闻类应用,模型层就负责从服务器…

PNG图片批量压缩exe工具+功能纯净+不改变原始尺寸

小编最近有一篇png图片要批量压缩&#xff0c;大小都在5MB之上&#xff0c;在网上找了半天要么就是有广告&#xff0c;要么就是有毒&#xff0c;要么就是功能复杂&#xff0c;整的我心烦意乱。 于是我自己用python写了一个纯净工具&#xff0c;只能压缩png图片&#xff0c;没任…

【论文阅读】小样本学习相关研究

相关文献 Generalizing from a Few Examples: A Survey on Few-Shot Learning Author: YAQING WANG、QUANMING YAO、JAMES T. KWOK、LIONEL M. NIAbstract: Artificial intelligence succeeds in data-intensive applications, but it lacks the ability of learning from a …

【架构论文-1】面向服务架构(SOA)

【摘要】 本文以我参加公司的“生产线数字孪生”项目为例&#xff0c;论述了“面向服务架构设计及其应用”。该项目的目标是构建某车企的数字孪生平台&#xff0c;在虚拟场景中能够仿真还原真实产线的动作和节拍&#xff0c;实现虚实联动&#xff0c;从而提前规避问题&#xff…

常见的排序算法及分类对比

虽然在竞赛和编程语言中用到的排序算法主要是时间复杂度为 O ( n log ⁡ n ) O(n \log n) O(nlogn) 的高效算法,但作为算法学习,我们要从简单到复杂,认识常见的排序算法,并理解其算法思想。本文列出几乎所有的排序算法并进行分类对比。 排序算法总表 以下是一个对比表格…