
YbtOJ 字符串处理课堂过关 例1 数字反转【字符串】
发布日期:2021-05-07 13:09:54
浏览次数:17
分类:精选文章
本文共 955 字,大约阅读时间需要 3 分钟。
题目
在解决这个问题时,我们需要使用字符数组模拟来处理特定的字符串操作。思路
通过分析发现,直接使用string类型进行逐位赋值会遇到问题。string类型在某些操作中可能无法满足我们的需求,因此我们需要考虑使用字符数组来实现类似的功能。代码
#include#include #include #include using namespace std;char s[10010], ss[10010];int w = 0, ww = 0;int main() { cin >> s; if (s[0] == '-') { cout << "-"; } else { w = 1; } for (int i = strlen(s) - 1; i >= 1; i--) { ss[strlen(s) - 1 - i] = s[i]; } // 以下代码不适用于string类型 if (w == 1) { ss[strlen(s) - 1] = s[0]; } for (int i = 0; i <= strlen(ss) - 1; i++) { if (ss[i] != '0' || ww == 1) { cout << ss[i]; } }}
问题分析
在代码中,我们尝试使用字符数组ss来模拟string类型的操作。通过观察发现,当输入字符串以'-'开头时,直接输出'-'; 否则,我们尝试将输入字符串反转并存储在ss数组中。然而,在实现过程中遇到了一个问题:当使用string类型时,无法直接进行逐位赋值操作。因此,我们改用字符数组来实现类似的功能。解决方案
通过使用字符数组,我们可以更灵活地处理字符串操作。代码中的主要逻辑是:首先读取输入字符串s,如果s以'-'开头,直接输出'-'; 否则,反转s并将结果存储在ss数组中。最后,我们遍历ss数组输出结果。发表评论
最新留言
第一次来,支持一个
[***.219.124.196]2025年03月23日 01时14分02秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
oracle 11g not in 与not exists 那个高效?
2019-03-06
Linux 安装Redis 5.0(以及参数调优)
2019-03-06
html5 Game开发系列文章之 零[开篇]
2019-03-06
为什么阿里巴巴建议集合初始化时,指定集合容量大小
2019-03-06
为什么阿里巴巴要求谨慎使用ArrayList中的subList方法
2019-03-06
Redis不是一直号称单线程效率也很高吗,为什么又采用多线程了?
2019-03-06
基于Python的Appium环境搭建合集
2019-03-06
Requests实践详解
2019-03-06
接口测试简介
2019-03-06
Golang Web入门(4):如何设计API
2019-03-06
让sublime实现js控制台(前提是安装了nodejs)
2019-03-06
树莓派连接二手液晶屏小记
2019-03-06
error: 'LOG_TAG' macro redefined
2019-03-06
android10Binder(一)servicemanager启动流程
2019-03-06
ES6基础之——new Set
2019-03-06
nodeJS实现识别验证码(tesseract-ocr+GraphicsMagick)
2019-03-06
玩玩小爬虫——试搭小架构
2019-03-06
AS与.net的交互——加载web上的xml
2019-03-06
Javascript之旅——第八站:说说instanceof踩了一个坑
2019-03-06