c语言 大数开方,大数加法之C语言函数法(只有正数版)

article/2025/9/15 9:54:11

由于某些原因,我于今天2017-4-19将我的博文搬到博客园了,以后我就在这里扎根了。

之前想过在博客写文章方便日后复习,但一直未能实现,所以,现在这篇是我个人人生中第一篇博客,所以写博客完全没经验,可能会有些啰嗦,读者将就着看吧,哈哈。由于本人还是学生,所以有理解不对的地方,请各位大神指出,让我,让后面看到此文章的人共同进步,谢谢,本文适合新手看,个人觉得思路挺清晰,大神可飘过,勿喷。

大数加法,可以模拟小学的加法,主要是几步:由字符型转换成整形数组,反转相加,处理进位情况,再转换回字符型输出答案。废话不多说了,代码如下:

# include

# include

char * sum(char *a,char*b)//对C语言来说返回一个字符指针,因为我们的结果是以字符串形式输出

{

int s[1000]= {0};//用整形数组存储数字,记得清零

char c[1000];//这将是我们用来输出的数组,后面直接返回数组名 c即可

int i,j,maxlen,d;

int la=strlen(a),lb=strlen(b);

la>lb?maxlen=la:maxlen=lb;//这里是要找出两个数字的最高位

for(j=la-1; j>=0; j--)//将字符转换成数字并反转存进整形数组

s[la-1-j]+=a[j]-'0';

for(j=lb-1; j>=0; j--)//同上

s[lb-1-j]+=b[j]-'0';

for(i=0,d=0; i

{

s[i]+=d;//从低位开始

d=s[i]/10;//如果两数相加超过十 d就会变1

s[i]%=10;//然后此时s[i]存的就是该位上的数字

}

if(d>0)//处理最高位

s[maxlen++]+=d;

for(i=maxlen-1; i>=0; i--)//再将整形数组 反转转换为字符数组

c[maxlen-1-i]=s[i]+'0';

c[maxlen]=' ';//最后面加上结束符

return c;//返回字符指针

}

int main(void)

{

char a[1000],b[1000];

char *c;

while(scanf("%s %s",a,b))

{

c=sum(a,b);

printf("%s

",c);

}

return 0;

}

以上就是鄙人之见

测试效果如下:

fea72a2403eca9166be972e6303935b6.png


http://chatgpt.dhexx.cn/article/i0BN9AVU.shtml

相关文章

开平方的快速算法(C代码)

目录: 一、牛顿迭代法 二、采用移位、加减法、判断和循环实现开平方 三、效率远高于牛顿迭代法开平方法 1、原理 2、实现代码 四、卡马克快速开平方算法(推荐) 1、C-Free模拟验证卡马克开平方 2、移植到实际的项目 3、卡马克快速开平方的由来 1&#xff0…

windows 区域截屏以及延迟截屏

提起在Windows, 我们都会用到截屏功能,今天论述一下window 10系统自带的截图应用Snipping Tool 打开Snipping Tool 找到任务栏下的放大镜图标,点击 在下方输入snipping,会在左侧找到截图软件Snipping Tool,点击可进入…

小米手机解决此区域不可截屏

小米手机解决此区域不可截屏 无意中暂停视频弹出消息,想试试可不可以截屏竟然可以截屏,但是视频一播放就截屏不了了,录屏也是,直接变黑或者是直接提示弹窗,嘻嘻嘻嘻小米bug还是有好处滴

浏览器网页截屏实用小技巧

浏览器开发者工具中自带的截屏太方便了! 打开开发者工具,输入 ctrl shift P 快捷键,输入screenshot,出现了四个选项,分别是: 1.area screenshot - 区域截图 2.full size screenshot - 对浏览器所有内容…

如何利用计算机截屏快捷键,电脑怎么截图 电脑选区域截图怎么截 电脑截图快捷键是什么...

电脑怎么截图 按照操作上从易到难的顺序,给你推荐五种截屏方式 : 第一种:Ctrl PrScrn 使用这个组合键截屏,获得的是整个屏幕的图片; 第二种:Alt PrScrn 这个组合键截屏,获得的结果是 当前窗口的图片; 第三…

iOS 截屏指定区域

转自:链接:https://www.jianshu.com/p/39db0fa66c0e 指定截屏代码实现 全屏截图效果 全屏截图效果 指定区域截屏效果 指定区域截屏效果 这里先上代码,代码后面有相关方法的解释第一种方法代码下载 /**创建一个基于位图的上下文&#xff0…

windows如何截屏

截屏是我们平时工作或记录常用的操作,不过有人不知道怎么用系统截屏,今天,小编带来了系统的几种截屏,让我们来看看吧! 一、快捷键截图 1. Win shift S:可以选择截图区域的大小,CtrlV粘贴在w…

Android 任意区域截屏

1、全屏截图 Android其实可以做到任意区域截屏,不过我们先来看看整个屏幕截图代码,相信大家很熟悉,代码如下 View decorView activity.getWindow().getDecorView(); decorView.setDrawingCacheEnabled(true); view.buildDrawingCache(); /…

snipaste 固定位置截屏

原文参考: snipaste怎么固定位置截图,如何统一大小截图 一、电脑点击【snipaste】,或者点击键盘的“F1”。 二、在图片,根据自己的需求,画出截图的位置和大小,比如:本篇是500*296。 三、点击右…

JavaScript实现浏览器特定区域截屏和下载功能

JavaScript实现浏览器特定区域截屏功能 需求介绍尝试一:使用Jtopo.js自带的保存图片方法(不能对资源进行下载)尝试二:对saveImageInfo进行改写(功能能用,但是会因为跨域问题污染canvas)&#xf…

Unity中的截图方法(包括全屏截图、区域截图、Camera截图和摄像头截图)

Unity中的截图方法(包括全屏截图、区域截图、Camera截图和摄像头截图) Application.CaptureScreenshotScreenCapture Texture2D.ReadPixels视口截图RenderTexture(Camera截图)WebCamTexture(摄像头截图、照相&#xff…

实现区域截图功能

利用QQ或微信自带的截图功能实现区域截图。 在腾讯安装目录下找到PrScrn.dll,并将它放在需要的位置, 将D:/PrScrn.dll修改为你的目录。 如果在maya里面直接使用该代码 import os,subprocess from PySide2.QtWidgets import QApplication clipboard …

小米手机怎么截屏?小米手机区域截屏

小米手机怎么截屏?手机的截屏其实都是差不多的,基本上都是三指向下滑动而达到截屏效果的,但基本都是全屏截图。小米手机区域截屏怎么做?如果想要做到任意位置的那种区域块截屏的话,该怎么做?下面就来看看吧…

浏览器截图方法(长截图、node截图、指定区域截图)

1.打开需要截屏的页面,按键盘上的F2(或者CtrlShiftI)打开浏览器控制台 2.CtrlshiftP进入搜索框,输入“screen”: 这里有四种截图模式,点击需要的截图方式即可截取图片。

Windows关闭指定端口命令

假设要关闭端口号为3003,使用下面的命令,查出此端口号对应的PID netstat -ano|findstr 3003 上图红框内的 22876 就是3003端口对应的PID,再使用下面的命令就可以关闭这个端口了 taskkill /PID 22876 /F

Linux关闭端口

netstat -anp | grep xxx //查看端口是否被占用kill -9 10762 //即可关闭端口

linux开放端口和关闭端口

centos6: 关闭防火墙:service iptables stop 开启防火墙:service iptables start 防火墙状态:service iptables status 永久关闭:chkconfig iptables off 永久开启:chkconfig iptables on 方法一(命令): 1. 开放端口命令: /sbin/iptables -I INPUT…

[NLP自然语言处理]谷歌BERT模型深度解析

BERT模型代码已经发布,可以在我的github: NLP-BERT--Python3.6-pytorch 中下载,请记得start哦 目录 一、前言 二、如何理解BERT模型 三、BERT模型解析 论文的核心:详解BERT模型架构 关键创新:预训练任务 实验结果 四、BERT模型…

深度学习:BERT模型

BERT模型 BERT出自https://arxiv.org/pdf/1810.04805.pdf的全称是Bidirectional Encoder Representation from Transformers,即双向Transformer的Encoder。作为一个Word2Vec的替代者,其在NLP领域的11个方向大幅刷新了精度,可以说是近年来自残…

BERT模型系列大全解读

前言 本文讲解的BERT系列模型主要是自编码语言模型-AE LM(AutoEncoder Language Model):通过在输入X中随机掩码(mask)一部分单词,然后预训练的主要任务之一就是根据上下文单词来预测这些单词,从…