输入字符串型数字,将字符串型数字转化为整型数字,再将整型数字转化为字符串数字的数组,数字字符串相互转化

2023-11-08

输入字符串型数字,将字符串型数字转化为整型数字,再将整型数字转化为字符串数字的数组

写此函数的原因:
很多题目都是对字符串的操作,特别是若能将字符串和数字相互转化,那么解题就会方便很多。
直接上代码(有注释):

#include<iostream>
#include<stdio.h>
#include<string.h>

using namespace std;

char* toLetter(int num){  //将数字转化为字符数组,默认数字为正数
    char *str;		//声明字符数组
	int i=0;		//数组下标
	while(num!=0){	//对数字进行除10
		str[i]=num%10+'0';	//余数作为字符数组中的一项
		num=num/10;
		i++;
	}
	str[i]='\0';		//最后一位的下一位设置为NULL
	i--;		//将数组下标调整到最后一位的位置
	char temp;
	for(int j=0;j<i;j++,i--){	//将得到的字符数组进行反转
		temp=str[i];
		str[i]=str[j];
		str[j]=temp;
	}
	return str;		//返回字符数组
}

int toNumber(char* str){    //将字符数组转化为数字,默认字符串中都是数字
    int w=0,k=0;            //w保存计算得来的数值,k用于临时变量通过-'0'的方式将字符转化为数字
    int len=strlen(str);    //strlen()是string.h头文件下面的一个函数,用于计算数组的实际长度
    for(int i=0;i<len;++i){ //转化
        k=str[i]-'0';
        w=w*10+k;
    }
    return w;
}

int main(){ //输入一个字符串型数字,将其转化为整型数字,再将数字转化为字符串数组
    char str[1000];
    while(gets(str)){   //这里gets()函数是stdio头文件下的,不需要额外扩入头文件,是从标准输入流中读取一串字符
        int x=toNumber(str);
        cout<<"数字的形式是:"<<endl<<x<<endl;
        char* s=toLetter(x);    //转化为字符数组
        int len=strlen(s);      //得到字符数组的长度
        cout<<"字符数组的形式是:"<<endl;
        for(int i=0;i<len;++i){ //输出字符数组
            cout<<s[i]<<" ";
        }
        cout<<endl;
    }
    return 0;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

输入字符串型数字,将字符串型数字转化为整型数字,再将整型数字转化为字符串数字的数组,数字字符串相互转化 的相关文章

随机推荐

  • Ant Design中使用Upload上传组件如何自定义文件列表展示位置

    软件环境 macOS Big Sur 11 1 React 16 12 0 Ant Design 4 10 0 实际效果 现有一个需求 是上传文件 点击浏览文件按钮 选中文件后 在按钮的上方显示 上传的文件列表 如下图所示 当前效果 目前使
  • 存储器容量的扩展

    存储器容量的扩展 一般而言 要构成一个存储器 一般需要多个存储芯片一起来构成 那么多个存储芯片是如何构成一个大的存储器来进行工作的呢 一般有如下三种方式 方式一 位扩展 增加存储字长 假设现在有1K 1024个 4位的存储芯片 容量为409
  • 为什么显示 from PyQt5.QtWebEngineWidgets import QWebEngineView ModuleNotFoundError: No module named 'PyQt5.QtWebEngineWidgets'

    这个错误通常是由于你的 Python 环境中缺少 PyQt5 QtWebEngineWidgets 模块引起的 这个模块是 PyQt5 库中的一个子模块 用于提供 WebEngine 功能 要解决这个问题 你需要安装 PyQt5 库 最简单
  • Flutter全屏效果切换使用 实现

    Flutter官方自带的splash启动页是在android或者ios的文件里面设置 但是不能添加倒计时之类的效果 自己做启动页需要全屏效果显示的时候 调用SystemChrome setEnabledSystemUIOverlays 这个
  • 开源最佳实践:Android平台页面路由框架ARouter

    摘要 为了更好地让开发者们更加深入了解阿里开源 阿里云云栖社区在3月1号了举办 阿里开源项目最佳实践 在线技术峰会 直播讲述了当前阿里新兴和经典开源项目实战经验以及背后的开发思路 在本次在线技术峰会上 阿里云资深开发工程师刘志龙分享了And
  • 【超简单方法】ubantu18.04.2安装最新显卡驱动

    1 检查工作 1 1去https www geforce cn drivers查找适合自己显卡的最新驱动版本 点击 开始搜索 然后 可以看出此时笔者的2060的最新显卡驱动版本为430 26 1 2 检查可安装驱动版本 接下来执行打开ter
  • ATF bl1 ufshc_dme_get/set处理流程分析

    ATF bl1 ufshc dme get set处理流程分析 UFS术语缩略词 1 ATF的下载链接 2 ATF BL1 ufshc dme get set流程 3 ufs总体架构图 3 1 UFS Top Level Architect
  • Collectors.collectingAndThen()

    Collectors collectingAndThen Java 8 流的新类 java util stream Collectors 实现了 java util stream Collector 接口 同时又提供了大量的方法对流 str
  • 赛灵思FPGA编程入门指南

    中英双语字幕精校版 赛灵思FPGA编程入门之新手指南第1集 什么是FPGA 现场可编程门阵列 FPGA概念 什么是FPGA 现场可编程门阵列 FPGA概念 本系列视频旨在为FPGA新人逐步讲解教程和基本概念 提供FPGA编程入门指导 帮助您
  • web程序员表白程序,三行情书

    Git项目地址 loveLetter 很久之前的作品 用JS和CSS3实现的 今天给大家分享一部分 若要见完整版 请点击右侧链接下载 程序员浪漫表白 三行情书 一等奖 JS CSS3 注 这是一个3D场景 在PC端的话还可以按住鼠标左键并拖
  • 数据库-sqlserver数据库迁移到mysql

    文章目录 前言 流程 前言 有时一些sqlserver的数据库需要迁移到mysql上 流程 管理员方式启动mysql的sqlYOG图形化界面 右键对象浏览器导入外部数据库 此处点下一步没有用的 需要先建立dsn 给要建立的dsn文件起个名字
  • 申请被拒模板 (五)

    这里只是模板 仅供学习 出现任何问题 与博主无关 Hi XXXX Thank you for your interest We appreciate the time you took to apply with us At this ti
  • h2 mysql 比较_h2 数据库时间比较

    时间比较的格式是 parsedatetime imp time yyyy MM dd hh mm ss en GMT gt parsedatetime 2012 06 07 00 00 00 yyyy MM dd hh mm ss en G
  • 多态、object类、package、Integer类、String和int类型之间的转换

    多态 多态即为事物存在的多种形态 多态存在的前提 要有继承关系 要有方法的重写 父类引用指向子类对象 多态中的成员访问特点 成员变量 编译看左边 父类 运行看左边 父类 成员方法 编译看左边 父类 运行看右边 子类 静态方法 编译看左边 父
  • MySQL使用binlog日志做数据恢复

    MySQL的binlog日志是MySQL日志中非常重要的一种日志 记录了数据库所有的DML操作 通过binlog日志我们可以进行数据库的读写分离 数据增量备份以及服务器宕机时的数据恢复 定期备份固然可以在服务器发生宕机的时候快速的恢复数据
  • 使用MyJRebel获取免费的JRebel授权

    在我们开发Java Web程序的时候 调试就是一个麻烦事情 每次更改类 就需要重启服务器 对于Tomcat这样的小巧服务器来说 重启就重启吧 反正也就是几秒钟的事情 如果使用的是完整的Java EE标准服务器 GlassFish这种 重启的
  • 权威分析@RequestParam和@RequestPart 的区别(官方文档)

    一 今天写了两个文件上传的接口用到了 RequestParam和 RequestPart RequestPart 单文件上传 param file param bucket return RequestMapping uploadFile
  • Java50个关键字总结

    作业一 Java基础知识复习 一 关键字总结 1 abstract 修饰类 abstract修饰类 这个类就是抽象类 抽象类中可以有非抽象变量和成员变量 也可以有普通方法 构造方法 但是不能实例化 只能被子类继承 如果子类不是抽象类 则必须
  • python出现invalid syntax什么意思_关于Python出现invalid syntax的几种原因

    原博文 2020 03 19 16 41 1 语法错误 3 X和2 X的语法区别非常大 需要多去了解之后再下手 2 代码缩进问题 这个一般用到工具的情况下可以自动调整 3 我今天也就是傻乎乎的犯了 安装命令是在cmd下直接运行 并不是在py
  • 输入字符串型数字,将字符串型数字转化为整型数字,再将整型数字转化为字符串数字的数组,数字字符串相互转化

    输入字符串型数字 将字符串型数字转化为整型数字 再将整型数字转化为字符串数字的数组 写此函数的原因 很多题目都是对字符串的操作 特别是若能将字符串和数字相互转化 那么解题就会方便很多 直接上代码 有注释 include