C++字节长度比LONG长的数

[复制链接]
查看11 | 回复1 | 2009-12-13 21:53:55 | 显示全部楼层 |阅读模式
unsgin long intfloat double用字符串保存的数是最大的 我想可以这么做,用double做, 然后加几条判断, 首先两个相加,然后把得数保存在字符串中,然后在判断 ,你的和数是不是比两个数小, 如果小的的话就在你那个字符串中的第一位加一个1,, 输出的 时候直接输出字符串就可以了,因为字符串在屏幕上的输出和数字在屏幕上的输出是看不出区别来的
回复

使用道具 举报

千问 | 2009-12-13 21:53:55 | 显示全部楼层
// BigNumber.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include #include using namespace std;void add(const char* num1,const char* num2){
int k=0;
int carry=0;//进位
int i=strlen(num1)-1;
int j=strlen(num2)-1;
int size=strlen(num1)>strlen(num2)?strlen(num1):strlen(num2);
int *arrayAdd=new int[size+1];
//初始化数组
for(int x=0;x=0;h--)
{
if(i>=0&&j>=0)
{
arrayAdd[k]=((num1-48)+(num2[j]-48)+carry)%10;
if(((num1-48)+(num2[j]-48)+carry)>=10)
{
carry=1;
}
else
{
carry=0;
}
k++;
}
else
{
if(j=0)
{
arrayAdd[k]=((num1-48)+carry)%10;
}
if(j>=0&&i=0;k--)
{
cout>num1;
cin>>num2;
add(num1.c_str(),num2.c_str());
system("pause");
system("cls");
goto L; return 0;}//大数处理,你想输入多少位就输入多少位,输入多少运算多少位,不信可以验证下,不过里面有没用的代码,你看下把垃圾代码删除下 ,我是用VS2005编的,如果不是VS2005要注意变通下。 (win32控制台应用程序)我想在哪儿用那个主要函数是没问题的吧
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行