C++程序设计实践指导1.4正整数转换为字符串改写要求实现
改写要求1:改为适合处理超长整数
#include <cstdlib>
#include <iostream>
#include <string>
using namespace std; struct LinkNode
{
short int data;
LinkNode *next;
};
class STR
{
string str;
public:
STR(string x)
{
str=x;
}
struct LinkNode* itoa();
struct LinkNode* reverse(LinkNode* pHead);
void print(LinkNode* pHead)
{
LinkNode* p=pHead;
p=p->next;
cout<<"n= ";
while(p)
{
cout<<p->data;
p=p->next;
}
cout<<endl;
}
}; struct LinkNode* STR::itoa()
{
LinkNode* pHead=new LinkNode;
pHead->next=NULL;
LinkNode* p;
p=pHead;
int i=;
string s;
int x=atoi(str.substr(i,).c_str());
while()
{
LinkNode* NewLinkNode=new LinkNode;
NewLinkNode->next=NULL;
NewLinkNode->data=x;
p->next=NewLinkNode;
p=NewLinkNode;
s=str.substr(++i,).c_str();
if(s.length()==)
return pHead;
x=atoi(s.c_str());
}
return pHead; } struct LinkNode* STR::reverse(LinkNode* pHead)
{
LinkNode *p,*q;
LinkNode *t;
p=pHead->next;
q=pHead->next->next;
while(q)
{
t = q->next;
q->next = p;
p = q;
q = t;
}
pHead->next->next=NULL;
pHead->next=p;
return pHead;
} int main(int argc, char *argv[])
{
string n;
LinkNode* pHead;
cout<<"Input n: ";
cin>>n;
STR str(n);
pHead=str.itoa();
// pHead=str.reverse(pHead);
str.print(pHead);
system("PAUSE");
return EXIT_SUCCESS;
}
C++程序设计实践指导1.4正整数转换为字符串改写要求实现的更多相关文章
- C++程序设计实践指导1.15找出回文数改写要求实现
改写要求1:用单链表实现 #include <cstdlib> #include <iostream> using namespace std; struct LinkNode ...
- C++程序设计实践指导1.14字符串交叉插入改写要求实现
改写要求:1:以指针为数据结构开辟存储空间 改写要求2:被插入字符串和插入字符串不等长,设计程序间隔插入 如被插入字符串长度为12,待插入字符串长度为5 则插入间隔为2 改写要求3:添加函数Inser ...
- C++程序设计实践指导1.13自然数集中找合数改写要求实现
改写要求1:用单链表实现 改写要求2:析构函数中依次将链表结点删除 #include <cstdlib> #include <iostream> using namespace ...
- C++程序设计实践指导1.12数组中数据线性变换改写要求实现
改写要求1:分别用指针pa.pb代替数组 改写要求2:从键盘输入data元素 元素个数任意,输入0结束 #include <cstdlib> #include <iostream&g ...
- C++程序设计实践指导1.10二维数组元素换位改写要求实现
改写要求1:改写为以单链表和双向链表存储二维数组 改写要求2:添加函数SingleLinkProcess()实现互换单链表中最大结点和头结点位置,最小结点和尾结点位置 改写要求3:添加函数Double ...
- C++程序设计实践指导1.1删除序列中相同的数改写要求实现
改写要求1:改写为以指针为数据结构 #include <iostream> #include <cstdlib> using namespace std; class ARP ...
- C++程序设计实践指导1.7超长数列中n个数排序改写要求实现
改写要求1:将以上程序改写为适合超长整数 改写要求2:将以上程序改写为适合超长数列 改写要求3:将数列中指定位置m开始的n个结点重新按降序排序 改写要求4:输出指定位置m开始的n个结点的超长整数 #i ...
- C++程序设计实践指导1.9统计与替换字符串中的关键字改写要求实现
改写要求1:将字符数组str改为字符指针p,动态开辟存储空间 改写要求2:增加统计关键字个数的函数void CountKeyWords() 改写要求3: 增加替换函数void FindKeyWords ...
- C++程序设计实践指导1.8求指定范围内的所有素数改写要求实现
改写要求1:以指针为数据结构动态开辟存储空间 #include <cstdlib> #include <iostream> using namespace std; class ...
随机推荐
- 改变navigationbar的底部线条颜色
[[UINavigationBar appearance] setBackgroundImage:[UIImage new]forBarMetrics:UIBarMetricsDefault]; CG ...
- Java—Integer类
Integer类 Integer 类在对象中包装了一个基本类型 int 的值.Integer 类型的对象包含一个 int 类型的字段. 该类提供了多个方法,能在 int 类型和 String 类型之间 ...
- 三星ssd转移系统
1. (正常模式)如果源磁盘小于目标磁盘 第 1 步 . 开始迁移 第 2 步 . 连接目标磁盘 ① 目标磁盘连接后,其状态会显示在屏幕上. ※ 如果您要连接 mSATA 产品,那么还需要 ...
- Maven 学习笔记
1. Maven 工具的意义: 从事软件开发,无论什么样的项目,什么样的技术,都要经历:编码.测试.打包.发布等几个特定过程,而这些过程在软件开发周期中都是重复的.繁琐的.Maven的出现是为了将开发 ...
- C# 给自己的代码 添加上 自己的版权信息
如何将自己的代码自动添加版权信息 现在大多数公司都规定程序员在程序文件的头部加上版权信息,这样每个人写的文件都可以区分开来,如果某个文件出现问题就可以快速的找到文件的创建人,用最短的时间来解决问题,常 ...
- PHP自动生成前端的表单框架
<?php /** * 为当前所在菜单项样式 * @param string $controller_name * @param string $action_name * @param str ...
- python的时间模块
python有两个重要的时间模块,分别是time和datetime 先看time模块 表示时间的几种方法: 1)时间元组:time.struct_time(tm_year=2016, tm_mon ...
- Rectangle and Square
Description Little Petya very much likes rectangles and especially squares. Recently he has received ...
- 移动端h5页面写法
1. 页面宽度320, 所有元素尺寸设一半 缺点:不自能适应全屏 2.页面宽度640,元素尺寸正常 <meta charset="utf-8" /> <meta ...
- SHELL中的特殊变量和结构
SHELL中的特殊变量和结构 表格 B-1. 特殊的shell变量 变量 含义 $0 脚本名字 $1 位置参数 #1 $2 - $9 位置参数 #2 - #9 ${10} 位置参数 #10 $# 位置 ...