当前位置: 首页 > news >正文

C语言——高精度问题

1、高精度计算的本质:竖式计算;

2、适用解决超出long long int 范围的大整数计算

#include<stdio.h>
#include<string.h>
#define N 100
char str1[N+4]={0},str2[N+4]={0};
int arr1[N+4]={0},arr2[N+4]={0};
int ans[N+5]={0};//将字符串转化成整型存储在新的int数组中,倒序存放
void transform(char *str,int *arr,int len){arr[0]=len;//用ans[0]记录数组长度for(int i=0;i<len;i++){arr[len-i]=(str[i]-'0');}return;
}//实现竖式相加,并且实现进位
void add_big_num(int* arr1,int* arr2,int* ans){ans[0]=arr1[0]>arr2[0]?arr1[0]:arr2[0];for(int i=1;i<=ans[0];i++){ans[i]=arr1[i]+arr2[i];}for(int i=1;i<=ans[0];i++){if(ans[i]<10) continue;ans[i+1]=ans[i+1]+(ans[i]/10);ans[i]=ans[i]%10;if(i==ans[0]) ans[0]++;}return;
}int main(){scanf("%s %s",str1,str2);int len1=strlen(str1);int len2=strlen(str2);transform(str1,arr1,len1);transform(str2,arr2,len2);add_big_num(arr1,arr2,ans);//数值逆序输出for(int i=ans[0];i>=1;i--){printf("%d",ans[i]);}return 0;
}

http://www.lryc.cn/news/502356.html

相关文章:

  • aippt:AI 智能生成 PPT 的开源项目
  • 【Qt之·类QSettings·参数保存】
  • location重定向和nginx代理
  • iptables详解
  • Edge SCDN深度解析,边缘安全加速的创新实践
  • solidworks常见问题已解决
  • vCenter开启HA报错
  • 在 Ubuntu 中 make 是否是系统自带的?怎么样查看Linux系统中是否有make?
  • js:我要在template中v-for循环遍历这个centrerTopdata,我希望自循环前面三个就可以了怎么写
  • 前端使用 Cursor 的最佳助手 - PromptCoder
  • 深入了解 Spring IOC,AOP 两大核心思想
  • QT从入门到精通——Qlabel介绍与使用
  • 华为HarmonyOS NEXT 原生应用开发:鸿蒙中组件的组件状态管理、组件通信 组件状态管理小案例(好友录)!
  • node.js 环境配置
  • 高并发数据采集场景下Nginx代理Netty服务的优化配置
  • 【C++算法】40.模拟_N 字形变换
  • 【云计算】虚拟化技术
  • 手机租赁系统开发指南一站式服务流程解析
  • 【机器学习】—时序数据分析:机器学习与深度学习在预测、金融、气象等领域的应用
  • OBS + SRS:打造专业级直播环境的入门指南
  • 收银系统源码-会员管理
  • MongoDB深化与微软的合作,新增人工智能和数据分析集成和微软 Azure Arc支持
  • 对流层路径延迟对SAR方位压缩的影响(CSDN_20240301)
  • RK3588 Linux实例应用(2)——SDK与编译
  • 深入探究 Scikit-learn 机器学习库
  • PAT甲级-1114 Family Property
  • 5.2 JavaScript 案例 - 轮播图
  • 使用IP自签名SSL证书
  • 数据库中的运算符
  • 定制erp真的很贵吗?