8、与字符串处理相关的几个程序

简介: 1、转换字符串的输入格式为:原来字符串里的字符+该字符连续出现的个数,例如字符串:1233422222,转化为1121324125。     我们用sprintf来实现,类同printf。 #include "iostream" #include "string" using names...

1、转换字符串的输入格式为:原来字符串里的字符+该字符连续出现的个数,例如字符串:1233422222,转化为1121324125

    我们用sprintf来实现,类同printf

#include "iostream"
#include "string"
using namespace std;

int main() 
{
cout << "Enter the numbers: " << endl;
string str;
cin >> str;
size_t ilength = str.length();
int icount = 1;
char cMyChar[50];
cMyChar[0] = '\0';
int k;
for (k = 0; k < ilength - 1; k++)
{
if (str[k] == str[k + 1]) //预判断
{
icount++; //记录字符个数
}
else
{
sprintf(cMyChar + strlen(cMyChar), "%c%d", str[k], icount);
icount = 1;
}
}

if (str[k] == str[k - 1])
;
else
icount = 1;
sprintf(cMyChar + strlen(cMyChar), "%c%d", str[k], icount);
cout << cMyChar << endl;
return 1;
}

2、整数转换成字符串

#include "iostream"
using namespace std;
int main() 
{
	int iMyData;
	cin >> iMyData;
	char cToTransfer[56];
	char cTemp[56];
	int icount = 0; //标记位数
	while(iMyData)
	{
		cTemp[icount++] = iMyData % 10 + '0';
		iMyData = iMyData / 10;
	}
	cTemp[icount] = '\0';
	cout << cTemp << endl;
	icount--;
	int j = icount, i = 0;
	while(j >=0)
	{
		cToTransfer[i++] = cTemp[j--];
	}
	cToTransfer[i] = 0;
	cout << cToTransfer << endl;
	return 1;
}

3、字符串转换成整数

#include "iostream"
using namespace std;

int main() 
{
	char iMyData[56];
	cin >> iMyData;
	int iToTransfer[56];
	int cTemp[56];
	int icount = 0; //标记位数
    int iSum = 0;
	while(iMyData[icount])
	{
		iSum = iSum * 10 + iMyData[icount] - '0';
		icount++;
	}
	cout << iSum << endl;
	return 1;
}
目录
相关文章
|
11月前
第一章数组
第一章数组
70 0
|
监控 持续交付 数据库
构建高效可靠的微服务架构:后端开发的新范式
【5月更文挑战第13天】 在当今软件开发的世界中,微服务架构已经成为了一种流行且有效的设计模式。它通过将大型复杂系统分解为一组独立的、可部署的服务来提高系统的可维护性、可扩展性和敏捷性。本文将探讨如何构建一个高效且可靠的微服务架构,包括关键的设计原则、技术选型以及可能面临的挑战。我们的目标是为后端开发者提供一套实用的指南,以便在构建现代化应用程序时做出明智的决策。
|
算法 C#
【年终分享】彩票数据预测算法(一):离散型马尔可夫链模型实现【附C#代码】
原文:【年终分享】彩票数据预测算法(一):离散型马尔可夫链模型实现【附C#代码】 前言:彩票是一个坑,千万不要往里面跳。任何预测彩票的方法都不可能100%,都只能说比你盲目去买要多那么一些机会而已。   已经3个月没写博客了,因为业余时间一直在研究彩票,发现还是有很多乐趣,偶尔买买,娱乐一下。
2154 0
|
消息中间件 存储 缓存
RabbitMQ中的SpringAMQP(上)
RabbitMQ中的SpringAMQP(上)
247 0
|
网络协议 安全 开发者
【网络知识补习】❄️| 由浅入深了解HTTP(八)HTTP/1.x 的连接管理
目录 🥑HTTP/1.x 的连接管理 🏳️‍🌈短连接 🏳️‍🌈长连接 🏳️‍🌈HTTP 流水线 🏳️‍🌈域名分片 💬总结
【网络知识补习】❄️| 由浅入深了解HTTP(八)HTTP/1.x 的连接管理
|
SQL Java 关系型数据库
MyBatis的pageHelper分页插件的使用(十五)上
MyBatis的pageHelper分页插件的使用(十五)
323 0
MyBatis的pageHelper分页插件的使用(十五)上
|
数据可视化 物联网 开发工具
IoT Studio可视化搭建平台编辑历史功能的思考与探索
在前端可视化搭建领域中“重做”和“撤销”这两个功能已经是标配中的标配,毕竟只要有用户行为的地方就可能会有出错,这两个功能无疑就是为用户提供了“后悔药”。目前有各种各样的可视化搭建平台,本文介绍IoT Studio可视化搭建平台在编辑历史功能上的设计与思考。
IoT Studio可视化搭建平台编辑历史功能的思考与探索
|
弹性计算 数据库
ECS使用有感
我是一名即将步入社会的大学生,随着网络法等相关专业知识的学习愈发强烈。查询资料时,常常会浏览到制作精美的个人站,因此产生了建设自己个人站的设想,但是由于业余时间少之甚少,同时听闻购买域名与服务器的价格不菲,因此计划一直未能实现
|
存储 Serverless 开发者
Serverless 的价值 | 学习笔记
快速学习 Serverless 的价值。
151 0
|
缓存 JavaScript
这一次,彻底搞懂闭包
这一次,彻底搞懂闭包
162 0