双曲正弦函数C语言 如何由双曲正弦函数求反双曲正弦函数

用C语言表示反正弦,反余弦 , 反正切函数计算反正切函数(使用欧拉变换公式 , 精度很高),反正切函数双曲正弦函数C语言的级数展开公式双曲正弦函数C语言:
f(x)=x-x^3/3+x^5/5+...+(-1)^k*x^(2k+1)/(2k+1)+...
当|x|1时,级数绝对值发散,无法直接使用欧拉公式计算 。因此可以通过下面双曲正弦函数C语言的公式
进行等价转换之后再进行计算 。
等价转换公式:
a)ATan(1/x)=Pi/2-ATan(x)
b)ATan(-x)=-ATan(x)
特殊情况
0=ArcTan(0)
Pi/2=ArcTan(无穷大)
//
//欧拉公式
//
//sum是和,term是通项值,jterm初始为1,以后按1递增 。wrksp是工作单元 , 视jterm的
//最大值而定 。
//
voideulsum(intnterm,double*sum,doubleterm,intjterm,doublewrksp[])
{
doubletmp,dum;
if(jterm==1)
{
nterm=1;
wrksp[1]=term;
*sum=0.5*term;
}
else
{
tmp=wrksp[1];
wrksp[1]=term;
for(intj=1;j=nterm;j++)
{
dum=wrksp[j+1];
wrksp[j+1]=0.5*(wrksp[j]+tmp);
tmp=dum;
}
if(fabs(wrksp[nterm+1])=fabs(wrksp[nterm]))
{
*sum=*sum+0.5*wrksp[nterm+1];
nterm=nterm+1;
}
else
{
*sum=*sum+wrksp[nterm+1];
}
}
}
级数计算就不用我给代码了吧 。
C语言中的标准函数有哪些?C语言输入输出函数有很多,标准I/O函数中包含了如下几个常用的函数:
scanf,printf,getc,putc,getchar,putchar,gets,puts,fgets,fputs,fgetc,fputc,fscanf,fprintf等.
int
getc(FILE
*fp)
getc主要是从文件中读出一个字符.常用的判断文件是否读取结束的语句为
(ch
=
getc(fp))
!=
EOF.EOF为文件结束标志,定义在stdio.h中,就像EXIT_SUCCESS,EXIT_FAILURE定义在stdlib.h中一样,文件也可以被理解为一种流,所以当fp为stdin时,getc(stdin)就等同于getchar()了.
int
putc(int
ch,FILE
*fp)
putc主要是把字符ch写到文件fp中去.如果fp为stdout,则putc就等同于putchar()了.
int
getchar(void)
getchar主要是从标准输入流读取一个字符.默认的标准输入流即stdio.h中定义的stdin.但是从输入流中读取字符时又涉及到缓冲的问题,所以并不是在屏幕中敲上一个字符程序就会运行,一般是通过在屏幕上敲上回车键,然后将回车前的字符串放在缓冲区中,getchar就是在缓冲区中一个一个的读字符.当然也可以在while循环中指定终止字符,如下面的语句:while
((c
=
getchar())
!=
'#')这是以#来结束的.
int
putchar(int
ch)
putchar(ch)主要是把字符ch写到标准流stdout中去.
char
*
gets(char
*str)
gets主要是从标准输入流读取字符串并回显 , 读到换行符时退出,并会将换行符省去.
int
puts(char
*str)
puts主要是把字符串str写到标准流stdout中去,并会在输出到最后时添加一个换行符.
char
【双曲正弦函数C语言 如何由双曲正弦函数求反双曲正弦函数】*fgets(char
*str,
int
num,
FILE
*fp)
str是存放读入的字符数组指针,num是最大允许的读入字符数,fp是文件指针.fgets的功能是读一行字符 , 该行的字符数不大于num-1.因为fgets函数会在末尾加上一个空字符以构成一个字符串.另外fgets在读取到换行符后不会将其省略.
int
fputs(char
*str,
file
*fp)
fputs将str写入fp.fputs与puts的不同之处是fputs在打印时并不添加换行符.
int
fgetc(FILE
*fp)
fgetc从fp的当前位置读取一个字符.
int
fputc(int

推荐阅读