用C语言实现两个任意长度的浮点数的减法
本人参赛模板(含注释,含高精度加法减法运算,main函数有具体示例):
#include
iostream
#include
string
using
namespace
std;
#define
HPSIZE
1024
//长度
//倒序存储
struct
HP
{
int
len;
int
s[HPSIZE
+
1];
};
//////////////////////////////////////
//输入,只能是正整数
//////////////////////////////////////
string
base_input(string
str)
{
char
c;
c
=
getchar();
while(c
!=
'\n')
{
str.push_back(c);
c
=
getchar();
}
return
str;
}
/////////////////////////////////////////
//将一个字符串转换成大数存入a
//
a
目标变量
//
str
原始数据
/////////////////////////////////////////
HP
change(string
str)
{
HP
a;
int
i;
while(str[0]
==
'0'
str.size()
!=
1)
str.erase(0,
1);
a.len
=
(int)str.size();
for(i
=
1;
i
=
a.len;
++i)
a.s[i]
=
str[a.len
-
i]
-
48;
for
(i
=
a.len
+
1;
i
=
HPSIZE;
++i)
a.s[i]
=
0;
return
a;
}
/////////////////////////////////////////
//输出
/////////////////////////////////////////
void
HPprint(const
HP
y)
{
int
i;
for(i
=
y.len;
i
=
1;
i--)
printf("%d",
y.s[i]);
}
////////////////////////////////////////
//比较两数大小
//返回
ab
-
返回值大于0
//
ab
-
返回值小于0
//
a=b
-
返回0
////////////////////////////////////////
int
HPcompare(const
HP
a,
const
HP
b)
{
int
len;
len
=
(a.lenb.len)
?
a.len
:
b.len;
while(len
a.s[len]
==
b.s[len])
len--;
if(len==0)
return
0;
else
return
a.s[len]
-
b.s[len];
}
/////////////////////////////////////
//高精度加法c=a+b
//
a,
b
加数
//
c
和
/////////////////////////////////////
HP
HPplus(const
HP
a,
const
HP
b)
{
HP
c;
int
i,
len;
for(i
=
1;
i
=
HPSIZE;
i++)
c.s[i]
=
0;
len
=
(a.lenb.len)
?
a.len
:
b.len;
for(i=1;i=len;i++)
{
c.s[i]
+=
a.s[i]
+
b.s[i];
if(c.s[i]
=
10)
{
c.s[i]
-=
10;
c.s[i
+
1]++;
}
}
if(c.s[len
+
1]
0)
len++;
c.len
=
len;
return
c;
}
////////////////////////////////////
//高精度减法c=a-b
////////////////////////////////////
HP
HPsub(const
HP
a,
const
HP
b)
{
HP
c;
int
i,
len;
for(i
=
1;
i
=
HPSIZE;
i++)
c.s[i]
=
0;
len
=
(a.lenb.len)
?
a.len
:
b.len;
for(i
=
1;
i
=
len;
i++)
{
c.s[i]
+=
a.s[i]
-
b.s[i];
if(c.s[i]
0)
//借位
{
c.s[i]
+=
10;
c.s[i+1]--;
//高位存于数组的后部
}
}
while(len
1
c.s[len]
==
0)
len--;
c.len
=
len;
return
c;
}
int
main(void)
{
string
str_a,
str_b;
HP
a,
b;
str_a
=
"1000000";
//初始要运算的数字
str_b
=
"1000000";
a
=
change(str_a);
//将一个字符串转换成大数存入a
b
=
change(str_b);
HPprint(HPsub(a,
b));
//进行减法运算
return
0;
}
如果对您有帮助,请记得采纳为满意答案,谢谢!祝您生活愉快!
Vae团队招人!!!欢迎各位加入!!!走过路过不要错过!!!迅猛发展中!!!
安全套浮点外面还是里面
外面,注意使用方法,小心破裂
步骤/方法
1、从避之孕套内包装边缘小心撕开以免扯裂避之孕套;避免用剪刀一类的利器,确保避之孕套不破裂。
步骤阅读
2
在阴之茎勃之起时带上避之孕套,谨记在阴之茎插入对方身体前戴上避之孕套。在阴之茎勃之起前期所产生的分泌物可能含有精之液与导致性之病的病菌,能引起怀之孕和性之病的传播。
步骤阅读
3
避之孕套内残留的空气会导致避之孕套破裂,为避免破裂的可能性,用拇指及食指轻轻挤出避之孕套前端小袋内的空气,然后将其戴在勃之起的阴之上。确定避之孕套末端卷曲部分露在外侧。
步骤阅读
4
在挤压住避之孕套前端的同时,以另一只手将避之孕套轻轻伸展包覆整个阴之茎。确定避之孕套于性交过程中紧套于阴之茎上;如果避之孕套部分滑脱,立即将其套回原位。若是避之孕套滑落掉出,立即将阴之茎抽出,并在继续性之交前戴上新的避之孕套。
步骤阅读
5
射之精之后,在阴之茎仍勃起时应立即以手按住避之孕套底部,在阴之茎完全抽离后再将避之孕套脱下。避免阴之茎与避之孕套接触到对方的身体。每片避之孕套只能使用一次。用过的避之孕套用纸巾包好并放入垃圾箱内。
END
注意事项
每次性之行为前,必须用一个新的胶质安之全之套。
避之孕套有不同的规格,应根据阴之茎勃之起时的大小选择适当型号,如太大会脱落在阴之道内,太小则被挤破使精之液流入阴之道内。
使用前应查看生产日期和有效期,过期的避之孕套已经变质,容易破裂,不宜使用。
避之孕套必须保存在阴凉、干燥和不接触酸、碱、油的环境中。如接触上述条件后变得发粘、发脆,即使在保质期内也不应再使用。
小心撕开独立密封的包装袋,避免用剪刀一类的利器。
如果还不明白,请看图解
在java中 浮点类型如何定义
与表示整数的整型不同,浮点型代表的是实数,其实就是包含小数的部分。我们也知道现实世界中是由很多复杂的数据的,所以需要这种表示实数的数据类型的支持。
一、浮点型常量 Java的实常数有两种表示形式:十进制数形式,由数字和小数点组成,且必须有小数点,如0.123, .123, 123. ,123.0 。 2.科学计数法形式。如:123e3或123E3,其中e或E之前必须有数字,且e或E后面的指数必须为整数。 实常数在机器中占64位,具有double型的值。对于float型的值,则要在数字后加f或F,如12.3F,它在机器中占32位,且表示精度较低。
二、浮点型变量 浮点型变量的类型有float和double两种。数据类型所占位数的范围: float 32位 3.4e-038~3.4e+038 ; double 64位 1.7e-308~1.7e+308 ; 双精度类型double比单精度类型float具有更高的精度,和更大的表示范围,常常用于科学计算等高精度场合。
三、浮点型变量定义举例 float f; //指定变量f为float型 double d; //指定变量d为double型 与C、C++不同,Java中没有无符号型整数,而且明确规定了整型和浮点型数据所占的内存字节数,这样就保证了安全性、鲁棒性和平台无关性
安全套螺旋型,浮点型是什么意思
螺旋型就是安全套的外边有螺旋呀,浮点型就是安全套的外表很多小点点,能给女性更大的刺激。这两种都差不多的,可以换着用,呵呵
plc浮点数运算为什么不准确
plc浮点数运算为什么不准确
解答如下:因为是首先步骤一是打开随机,突图就数要工退片的去析票。
qtcreator变量内存浮点显示
接着用在上一篇中项目做实例,首先在 MainWindow .cpp的头上加入头文件:
#include QDebug
2、在void MainWindow::on_pushButton_clicked()方法中加如下代码:
int a = 10;
int b;
memcpy(b, a ,4); //a的内存拷贝到b的内存上;
qDebug()"b: "b; //打印输出b的值;
登录后复制
3、如视频所示,在ui-label-setText("开始我的第一个工程!");这行的行号边上,用鼠标点一下,于是就设置了一个断点,当程序运行起来时,运行到断点处就会停止;
4、点击左下角第2个绿三角按钮,进入Debug运行状态,这时点击界面上的“PushButton”按钮,程序运行到断点处;
5、按“F10”,可以单步执行程序;
6、如视频所示把变量a、b分别加到右边查看它们的值;
7、如视频所示查看变量b的内存,内存中是16进制字节数,b是int类型,占4个字节,可以看到内存中是0a 00 00 00,低位在前高位在后,看内存在调试过程中是非常有用的;
8、qDebug()的打印输出结果最后在Application Output窗口查看;
需要观看运行效果或需要完整源代码,请到链接评论区写上你的邮箱
debug
qt
c++
c语言
vivo手机性价比高,硬核性能,带你体验高能体验-双十一平台手机
精选推荐
广告
QT5 掌握debug调试的方法(简要内容:Memory查看内存地址的数值 和 查看变量值)(图文并茂)
3.5W阅读·2评论·26点赞
2018年6月27日
Qt Creator基本使用方法
1738阅读·0评论·1点赞
2020年8月15日
QtCreator 加载Ubuntu环境变量
339阅读·0评论·0点赞
2022年10月31日
Qtcreator 调试时变量“无法访问”解决办法
5066阅读·7评论·3点赞
2019年1月9日
【Qt小白】Debug时如何查看变量值?
6704阅读·0评论·4点赞
2021年5月18日
Qtcreator调试时变量“无法访问”
1006阅读·0评论·0点赞
2019年8月2日
一字粗跟凉鞋
精选推荐
广告
QTCreator掌握debug调试查看内存的方法
3867阅读·0评论·3点赞
2021年3月27日
qt creator 内存查看器
8442阅读·1评论·2点赞
2017年11月14日
QtCreator 内存分析
393阅读·0评论·0点赞
2022年6月24日
qtcreator 自动进入反汇编_Qt Creator 源码学习 03:qtcreator.pro
239阅读·0评论·0点赞
2021年1月16日
QT Creator 调试出现汇编格式 解决办法如下
7027阅读·4评论·5点赞
2018年10月23日
Qt Creator Debug不显示变量值(no such value)
2020阅读·0评论·1点赞
2022年4月16日
Qt Creator基本使用方法学习
5.0W阅读·1评论·79点赞
2019年4月14日
VS+QT 调试无法看到QString等类型变量值
734阅读·0评论·1点赞
2022年6月21日
Qt5 调试中如何观察变量值
2.3W阅读·0评论·8点赞
2018年1月3日
Clion+Qt+msvc的配置使用,调试器显示Qt特有类型变量的值(如Qstring等)
1538阅读·0评论·6点赞
2021年12月20日
QT——程序调试
546阅读·1评论·1点赞
2019年7月8日
QtCreator使用总结
752阅读·0评论·1点赞
2022年4月12日
去首页
看看更多热门内容
评论1
__Raiden_2022
赞
请问能不能以16进制的格式查看变量?默认是10进制
:b.len;for(i=1;i=len;i++){c.s[i]+=a.s[i]-b.s[i];if(c.s[i]0)//借位{c.s[i]+=10;c.s[i+1]--;/
loat具有更高的精度,和更大的表示范围,常常用于科学计算等高精度场合。 三、浮点型变量定义举例 float f; //指定变量f为float型 double d; //指定变量d为dou
2022年6月24日qtcreator 自动进入反汇编_Qt Creator 源码学习 03:qtcreator.pro239阅读·0评论·0点赞2021年1月16日QT Creator 调试出现汇编格式 解决办法如下7027阅