编程算法:有一个数类型为double,如何得到其个、十、百位上的数字?java、c描述都可以,速回速采纳,谢。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了编程算法:有一个数类型为double,如何得到其个、十、百位上的数字?java、c描述都可以,速回速采纳,谢。相关的知识,希望对你有一定的参考价值。

高手都嫌问得太简单不回答?

参考技术A double x;
int i,m,n,k;
cin>>x;
i=(int)x; //对该数进行强制转换
m=i/100;
n=(i%100)/10;
k=i%10;
cout<<m<<n<<k<<endl;
字数限制 只能给出主程序 已调试
参考技术B double num
double B=num/100;
double S=(num-B*100)/10;
double G=num-B*100-S*10;
Java来的。
参考技术C 好难啊 参考技术D 先为转int;
int i;
i= d % 10; // 个位
i = d % 100 / 10; // 十位
i = d % 1000 / 100; // 百位.本回答被提问者采纳

如何读取STM32的唯一ID

1,如果板子上有外部存储器,可以先编写一个程序,利用算法把id计算得到一些值存入外部存储器,然后再烧写真正的程序,真正的程序去校验外部存储器的数据是否合法即可

2,利用板子上按键组合,或是上电按住某些键,程序在这个时候利用算法把id计算得到一些值存入程序区(stm8为EE区),程序运行时去验证程序区数据是否正确

3,轩微编程器有软件加密的功能,编程器会读芯片id,根据算法直接改写缓冲区,达到软件加密的作用

4,读出的id通过一定算法,例如异或加上一个数,得到的数据存入flash(只运行一次,运行后标志位也存入flash),下次读到这个标志位,就不运行这个程序。

四、做软件加密时注意
1,不要在程序中直接出现id地址,例如STM32:1FFFF7E8 1FFFF7EC 1FFFF7F0 STM8: 0x4865~0x4870
2, 利用校验和或是crc对程序区进行校验,防止改程序
参考技术A const unsigned char * CHIP_ID = (u8*)0x1FFF F7E8;
//这个地址在器件RM文档里有详细说明 , 声明好指针就可以 当做普通数据读取了

以上是关于编程算法:有一个数类型为double,如何得到其个、十、百位上的数字?java、c描述都可以,速回速采纳,谢。的主要内容,如果未能解决你的问题,请参考以下文章

用C语言如何实现 输入一个double 类型的数后 使该数保留小数点后两位 对第三个数进行四舍五入处理

如何判断一double类型的数值是不是有小数部分

C++统计double类型数组中不同元素个数

java求余的数然后恢复

C语言自动类型转换

编程总结