当前位置: 首页 > news >正文

洛谷 P5705:数字反转 ← string 类型

【题目来源】
https://www.luogu.com.cn/problem/P5705

【题目描述】
输入一个不小于 100 且小于 1000,同时包括小数点后一位的一个浮点数,例如 123.4 ,要求把这个数字翻转过来,变成 4.321 并输出。

【输入格式】
一行一个浮点数

【输出格式】
一行一个浮点数

【输入样例】
123.4

【输出样例】
123.4

【算法分析】
● 本题为字符串 string 的经典习题。
● 在 C++ 中,字符串(string)可以视为字符(char)数组。若设字符串为 s,则 s 中的每个元素可通过
s[0]~s[s.size()-1] 得到。
● 在 C++ 中,字符串(string)的长度,可以利用
size() 函数得到。

【算法代码一】

#include <bits/stdc++.h>
using namespace std;string s;int main() {cin>>s;for(int i=s.size()-1; i>=0; i--) {cout<<s[i];}return 0;
}/*
in:
123.4out:
4.321
*/

【算法代码二】
由于输入是包含一位小数的浮点数,所以可将其乘以 10 后赋给一个 int 型的变量,得到一个整数。之后,循环利用求余(%)及整除(/)便可实现原数的逆序输出。由于存在输出一个小数点的问题,所以用 if 特判一下便可。

#include <bits/stdc++.h>
using namespace std;int flag=0;int main() {float x;cin>>x;int t=x*10;while(t) {cout<<t%10;if(flag==0) {cout<<".";flag=1;}t/=10;}return 0;
}/*
in:123.4
out:4.123
*/





【参考文献】
https://www.luogu.com.cn/problem/solution/P5705



 


http://www.mrgr.cn/news/79061.html

相关文章:

  • HMV Challenges 022 Writeup
  • 数据恢复常见故障(四)关键信号的耦合电容撞件后导致SATA前端通信异常
  • 一步到位Python Django部署,浅谈Python Django框架
  • pytest-allure框架简单封装----测试报告
  • Unity 语音转文字 Vosk 离线库
  • Java Stream流操作List全攻略:Filter、Sort、GroupBy、Average、Sum实践
  • 剖析一下自己的简历第二条
  • HCIA笔记6--路由基础与静态路由:浮动路由、缺省路由、迭代查找
  • 软件工程——期末复习(2)
  • 【SpringBoot】整合篇
  • 2024第六届金盾信安杯Web 详细题解
  • 软件工程——期末复习(1)
  • 网络命令配置
  • AD学习笔记·空白工程的创建
  • React 第九节 组件之间通讯之props 和回调函数
  • 重生之我在异世界学编程之C语言:深入指针篇(上)
  • 组合问题变式——选数(dfs)
  • 嵌入式硬件面试题【经验】总结----会不断添加更新
  • IDL学习笔记(二)IDL处理卫星数据
  • 使用playwright自动化测试时,npx playwright test --ui打开图形化界面时报错
  • L15.【LeetCode笔记】相同的树
  • 同时将scss全局变量注入、Tailwind样式使用、自己插件配置到vite
  • 汽车IVI中控OS Linux driver开发实操(二十七):常用Linux指令
  • 记录vite关于tailwindcss4.0-bate4出现margin[m-*]、padding[p-*]无法生效的问题。
  • 神经网络中的优化方法(一)
  • Android 应用单元测试涉及 Telephony 环境初始化问题