auto f =3.14;//doubleautos("hello");//const char*auto z =newauto(9);//int *auto x1 =5, x2 =5.0, x3 ='r';//错误,必须是初始化为同一类型
(8)当要进行精度比较的时候,比如求三次方根,使用二分法做的时候,可以用区间右减去区间左
while( r - l >1e-8)//其中1e-8是1的负八次方{
double mid =( l + r )/2;if(three(mid)>= x) r = mid;else l = mid;}
(9)lowbit函数——提取该数二进制原码中最后一位1所在的位置
intlowbit(int x){
return x &-x ;//具体操作就是该数的二进制原码和补码(取反加一)进行与运算}
(10)输出某个数二进制原码
#include<iostream>#include<cstring>usingnamespace std;intlowbit(int x){
return x &-x ;}intmain(){
int n =10;for(int i =3; i >=0; i--) cout<<( n - i &1);//这个表示输出第i位二进制数return0;
(11)使用循环求两个数的最大公因数,然后通过两数相乘再除以最大公因数求出最小公倍数。
intgcd(long m ,long n ){
whiile( n ){
long temp = m % n ;
m = n ;
n = temp;}}