有进位和没进位
来源:互联网 发布:自制数据采集卡 编辑:程序博客网 时间:2024/05/01 02:25
#include<iostream>
#include<string.h>#include<stdio.h>
#include<algorithm>
using namespace std;
//大数相加
void dashu(char s1[],char s2[]){
int a[25]={0},b[25]={0},l1,l2,c,k,i;
l1=strlen(s1);
l2=strlen(s2);
if(l1<l2) k=l2;
else k=l1;c=k;
for(i=0;i<l1;k--,i++)
a[k]=s1[l1-1-i]-'0';
for(k=c,i=0;i<l2;k--,i++)
b[k]=s2[l2-1-i]-'0';
for(i=c;i>=0;i--)
{a[i]+=b[i];
if(a[i]>=10)
{a[i]-=10;
a[i-1]++;}
}
if(a[0]!=0)
{for(i=0;i<=c;i++)
printf("%d",a[i]);}
else
{for(i=1;i<=c;i++)
printf("%d",a[i]);}
printf(" ");
}
int main()
{
char a[11],b[11];
int c[15];
while((scanf("%s",&a))!=EOF)
{
scanf("%s",&b);
int len1=strlen(a);
int len2=strlen(b);
int aa=len1,bb=len2;
int flag=0;
int h=0;
dashu(a,b);
if(len1>len2)
{
for(int j=0;j<len2;j++)
{
aa=aa-1;
bb=bb-1;
a[aa]=a[aa]-'0'+b[bb];
if(a[aa]>57)a[aa]-=10;
}
for(int i=0;i<len1;i++)
{
if(a[i]!='0')
{
flag=1;
h=i;
break;
}
}
if(flag!=0){
for(;h<len1;h++)
printf("%c",a[h]);
printf("\n");
}
else printf("0\n");
}
if(len2>len1)
{
for(int j=0;j<len1;j++)
{
aa=aa-1;
bb=bb-1;
b[bb]=a[aa]-'0'+b[bb];
if(b[bb]>57)b[bb]-=10;
}
for(int i=0;i<len2;i++)
{
if(b[i]!='0')
{
flag=1;
h=i;
break;
}
}
if(flag!=0){
for(;h<len2;h++)
printf("%c",b[h]);
printf("\n");
}
else printf("0\n");
}
if(len2==len1)
{
for(int j=0;j<len2;j++)
{
aa=aa-1;
bb=bb-1;
a[aa]=a[aa]-'0'+b[bb];
if(a[aa]>57)a[aa]-=10;
}
for(int i=0;i<len1;i++)
{
if(a[i]!='0')
{
flag=1;
h=i;
break;
}
}
if(flag!=0){
for(;h<len1;h++)
printf("%c",a[h]);
printf("\n");
}
else printf("0\n");
}
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
}
return 0;
}
0 0
- 有进位和没进位
- 溢出和进位
- 进位和溢出
- 进位和溢出
- 汇编中的进位和溢出
- 溢出和进位的区别
- 溢出和进位的区别
- 加法进位
- 整数进位
- 进位问题
- 小学生进位
- 进位和溢出(Carry &amp; Overflow)
- 溢出OF和进位CF区别
- 关于奇偶校验和正负数及进位
- 溢出OF和进位CF区别
- 汇编语言中溢出和进位的区别
- JS进位取舍和产生随机数结合
- 进位和借位问题的研究
- Ubuntu 12.0下为Firefox安装Adobe Flash Player
- 黑马程序员—银行业务调度系统
- arm gcc内嵌汇编
- 动态规划之矩阵连乘
- 字符串和数字之间的转换
- 有进位和没进位
- 模型转化
- cocos2d-x应用窗口相关源码剖析1
- centos 下 jdk的安装
- MFC控件积累——CRichEdit控件
- windows batch 常用命令
- 并查集C - More is better
- LayoutInflater的inflate函数用法详解
- IOS:NSTimer