高精度减法,在做小减大时可花了我不少时间!

减法:

#include<stdio.h>

#include<string.h>

int main()

{

char s1[1000];

int a[1000]={0},b[1000]={0},c[1000]={0},l1=0,l2=0,l=0,i,x;

scanf("%s",s1);

l1=strlen(s1);

for(i=0;i<=l1-1;i++)

{

a[l1-1-i]=s1[i]-‘0‘;

}

scanf("%s",s1);

l2=strlen(s1);

for(i=0;i<=l2-1;i++)

{

b[l2-1-i]=s1[i]-‘0‘;

}

if(l1>l2)

l=l1;

else

l=l2;

for(i=0;i<=l-1;i++)

{

if(a[i]<b[i])

{

c[i]=a[i]+10-b[i];

c[i+1]=a[i+1]-1;

}

else

c[i]=a[i]-b[i];

}

for(i=0;i<=l-1;i++)

{

if(a[i]<b[i])

{

x=1;

}

}

if(l1<l2||x==1)

{

printf("-");

for(i=0;i<=l-1;i++)

{

if(b[i]<a[i])

{

c[i]=b[i]+10-a[i];

c[i+1]=b[i+1]-1;

}

else

c[i]=b[i]-a[i];

}

}

for(i=l-1;i>=0;i--)

{

if(c[i]==0)

l--;

else

break;

}

for(i=l-1;i>=0;i--)

printf("%d",c[i]);

return 0;

}

时间: 2024-10-17 10:04:55

高精度减法,在做小减大时可花了我不少时间!的相关文章

高精度减法

高精度减法(a-b)(a>b且a,b均为正整数) .从键盘读入两个正整数,求它们的差. 分析:类似加法,可以用竖式求减法.在做减法运算时,需要注意的是:被减数必须比减数大,同时需要处理借位.高精度减法的参考程序: 1 program exam2; 2 const 3 max=200; 4 var 5 a,b,c:array[1..max] of 0..9; 6 n,n1,n2:string; 7 lena,lenb,lenc,i,x:integer; 8 begin 9 readln(n1);

android FakeWindow的小应用大用途

在windowmanager里面有一个FakeWindow,细致一看也就是一个透明的应用覆盖到屏幕的最前端,这样有什么优点呢?首先我们还是从应用的需求来看这个问题.在android系统里无论是手机还是平板,状态栏一般都是在的,导航栏在有些设备里面是没有的,由于android须要的那些HOME\BACK\MENU\SERCACH可能已经做在触摸屏上,或者是其它一些低成本的触摸小按键上或者硬按键上,可是也有非常多机器是没有这些的,那么就须要一个导航栏了,这样前期背景就清楚了. 有了导航栏跟状态栏,好

[小细节,大BUG]记录一些小问题引起的大BUG(长期更新....)

[小细节,大BUG]  1. 在不久前,一个朋友出现了这样一个BUG:当UITableView加载cell的时候,自定义的cell,怎么显示,里面的文字总是显示不完全(注意,文字不长).然后,我帮忙给看了下,甚至把在storyBoard中将cell的相关属性都试了下,虽然可以解决,但是效果不理想.最终经过排查,终于发现问题所在:当自定义cell时,因为需要布局子控件,所以他重写了layoutSubviews方法,然而在此方法中没有调用[super layoutSubviews],所以造成了布局混

12岁的少年教你用Python做小游戏

原地址:http://blog.jobbole.com/46308/ 本文由 伯乐在线 - 贱圣OMG 翻译自 Julian Meyer.欢迎加入技术翻译小组.转载请参见文章末尾处的要求. [感谢@贱圣OMG 的热心翻译.如果其他朋友也有不错的原创或译文,可以尝试推荐给伯乐在线.] 你有没有想过电脑游戏是怎样制作出来的?其实它没有你想象的那样复杂! 在这个教程里,你要学做一个叫<兔子和獾>的塔防游戏,兔子作为英雄,需要在城堡里抵御獾的进攻. 为了写这个游戏的代码,你将会用Python.好吧,我

洛谷 P2142 高精度减法 题解

此文为博主原创题解,转载时请通知博主,并把原文链接放在正文醒目位置. 题目链接 :https://www.luogu.org/problem/show?pid=1581 题目描述 高精度减法 输入输出格式 输入格式: 两个整数a,b(第二个可能比第一个大) 输出格式: 结果(是负数要输出负号) 输入输出样例 输入样例#1: 2 1 输出样例#1: 1 说明 20%数据a,b在long long范围内 100%数据0<a,b<=10的10000次方 AC代码: 1 #include<alg

谈小挫折大幸运

或许三个月里一直有很重的危机感吧.所以今天转正签合同还是释放了很多.毕竟从去年十一月份的选择,到现在的坚持,也都是为了能够稳定工作. 其实今天也没想写什么东西,就是想纪念 一下吧,N年过后再来看的时候,至少自己曾经也拼搏过.人的一生肯定会有很多大大小小的挫折,但我始终相信总体是美好的.反正我觉得自己就是小挫折大幸运.现在回想起来,还真的有很多这样的例子 当自己在培训学习的时候,本来就贷款了,然后没有任何经济来源,而且生活费还要自理.日子还是过很艰难的,基本上就过着借钱还钱的生活,这算是生活的一个

背景图片太大时,而又不出现竖向滚动条的做法

当设计图做为背景图片太大时,必会出现滚动条,但是项目那边不希望出现滚动条,是一屏显示的,那就可以这样设计Css <img src="images/bg.png" alt="bg"> img{ display:block; width:100%; height:100%;} 这样就可以让图片在页面中平铺,而不产生滚动条,但是有一个问题,当显示器的尺寸很小或13寸显示器的时候,图片会严重变形,但是这是目前来说最好的解决方案了.又不出现滚动条.做适配时也可以这

由多个电容组成的去耦旁路电路,电容怎么布局摆放,先大后小还是先小后大?

由多个电容组成的去耦旁路电路,电容怎么布局摆放,先大后小还是先小后大? PCB设计规范与指南, 电磁兼容 EMC, 高频高速PCB设计 by xfire 去耦旁路电磁兼容高速电路设计 对于噪声敏感的IC电路,为了达到更好的滤波效果,通常会选择使用多个不同容值的电容并联方式,以实现更宽的滤波频率,如在IC电源输入端用1μF.100nF和10nF并联可以实现更好的滤波效果.那现在问题来了,这几个不同规格的电容在PCB布局时该怎么摆,电源路径是先经大电容然后到小电容再进入IC,还是先经过小电容再经过大

O(n)获得中位数及获得第K小(大)的数

首先,中位数问题可以归结为求 K=n/2的 第K小元素,并无明显区别. 第一种方法,用MaxHeap,大小为K的大顶堆,能够求出最小的K的元素,复杂度为O(n*logK). 当K较大时,复杂度会较高.其实只需要求出第K小,而不是全部前K的序列,可以有更优化的方式.(大顶堆的方法就不贴代码了) 第二种方法,采用partition能够进行一定程度的改进,开始我认为这种方式已经是O(n),实际上如果partition选取的pivot导致每次partition都偏向一边,那么最坏情况是O(n^2). 先