Simple math library in Rust
I'm not too familiar with the math side of this, so I'll just focus on the Rust part.

Run rustfmt

Running cargo fmt will autoformat your code to the Rust best practices. For example, it will convert

fn arctan(x:f64) -&gt; f64 {
    let mut sum=0.;
    let epsilon=x/PRECISION;
    let mut i=0.;
    while i&lt;x {
        sum+=epsilon/(1.+i*i);
        i+=epsilon;
    }
    sum*(180./pi())
}


to

fn arctan(x: f64) -&gt; f64 {
    let mut sum = 0.;
    let epsilon = x / PRECISION;
    let mut i = 0.;
    while i &lt; x {
        sum += epsilon / (1. + i * i);
        i += epsilon;
    }
    sum * (180. / pi())
}


Notice the spacing added.

Run clippy

Running cargo clippy will point out a few common mistakes. Let's take a look at them here.

warning: using `print!()` with a format string that ends in a single newline
   --&gt; src/main.rs:136:9
    |
136 |         print!("{:.4}\n",arctan((i as f64)/100.));
    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
    = note: `#[warn(clippy::print_with_newline)]` on by default
    = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#print_with_newline
help: use `println!` instead
    |
136 |         println!("{:.4}",arctan((i as f64)/100.));
    |         ^^^^^^^


As it suggests, you should replace that line with println!.

warning: casting integer literal to `f64` is unnecessary
   --&gt; src/main.rs:141:28
    |
141 |     println!("e={:.4}",exp(1 as f64));
    |                            ^^^^^^^^ help: try: `1_f64`
    |
    = note: `#[warn(clippy::unnecessary_cast)]` on by default
    = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast


That, and the line that follows it, can be used as a float like you do everywhere else in your code. You can do 1_f64, 1f64, 1.0, or like elsewhere in your code, 1..

Extract repeated operations

When you print things out, you repeat the calculation a lot, and it actually appears to have a difference in assembly (although not when #[inline(never)] is used on ln?). So instead of

if arccos((i as f64) / 100.) &lt; 90. &amp;&amp; arccos((i as f64) / 100.) &gt; 0. {
    print!("{:.4}\t", arccos((i as f64) / 100.));
} else if arccos((i as f64) / 100.) &gt; 0. {
    print!("90\t");
} else {
    print!("0\t");
}


Prefer

let inv_cos = arccos((i as f64) / 100.);
if inv_cos &lt; 90. &amp;&amp; inv_cos &gt; 0. {
    print!("{:.4}\t", inv_cos);
} else if inv_cos &gt; 0. {
    print!("90\t");
} else {
    print!("0\t");
}