本文目录一览:
c语言 编程实现求n!要求用定义求阶乘的函数
1、打开vs2017软件,新建c语言的工程,首先开头引入头文件,然后调用先调用一下求阶乘的函数和空的主函数,最下方定义prime函数用来求阶乘:
2、主函数中用scanf函数接受用户输入的的数字,接着将输入的数传入处理阶乘的函数中完成计算,最后输出打印结果。prime函数有一个参数,首先判断是否为正数,然后用prime函数自身乘以参数s,最后返回值即可完成:
3、将程序编译运行,弹出窗口输入任意的数,计算阶乘;这里输入7,得到结果是5040。以上就是C语言求阶乘的方法:
C语言 求绝对值
有。C语言求绝对值的函数为abs( x )与fbs( x ),abs( x )包含于stdlib.h,且两者均包含于math头文件之下。
1、abs( x )函数
格式:int abs( int i );
作用:求整型数的绝对值
例子:
#includestdio.h
#include stdlib.h
#includemath.h
main( )
{
int a = 1, b = -2 ;
printf("%d的绝对值是%d,%d的绝对值是%d\n", a, abs( a ), b, abs( b ));
}
运行结果为:1的绝对值是1,-2的绝对值是2
2、fabs( x )函数
格式:float fabs( float i ); / double fabs( double x );
作用:求浮点数的绝对值
例子:
#includestdio.h
#includemath.h
main( )
{
float a = 1.4, b = -2.7 ;
printf("%f的绝对值是%f,%f的绝对值是%f\n", a, fabs( a ), b, fabs( b ));
}
运行结果为:1.400000的绝对值是1.400000,-2.700000的绝对值是2.700000
扩展资料:
其他math.h头文件包含函数介绍:
1、 三角函数
double sin(double);正弦
double cos(double);余弦
double tan(double);正切
2 、反三角函数
double asin (double); 结果介于[-PI/2,PI/2]
double acos (double); 结果介于[0,PI]
double atan (double); 反正切(主值),结果介于[-PI/2,PI/2]
double atan2 (double,double); 反正切(整圆值),结果介于[-PI,PI]
3 、双曲三角函数
double sinh (double);
double cosh (double);
double tanh (double);
4 、指数与对数
double frexp(double value,int *exp);这是一个将value值拆分成小数部分f和(以2为底的)指数部分exp,并返回小数部分f,即f*2^exp。其中f取值在0.5~1.0范围或者0。
double ldexp(double x,int exp);这个函数刚好跟上面那个frexp函数功能相反,它的返回值是x*2^exp
double modf(double value,double *iptr);拆分value值,返回它的小数部分,iptr指向整数部分。
double log (double); 以e为底的对数
double log10 (double);以10为底的对数
double pow(double x,double y);计算x的y次幂
float powf(float x,float y); 功能与pow一致,只是输入与输出皆为单精度浮点数
double exp (double);求取自然数e的幂
double sqrt (double);开平方根
5 、取整
double ceil (double); 取上整,返回不比x小的最小整数
double floor (double); 取下整,返回不比x大的最大整数,即高斯函数[x]
C语言 求方差
直接上代码:
#include stdio.h
#include conio.h
#include math.h
double fangcha(double x[], int n){
//求数组x(具有n个元素)的方差:S=(x^2-x)^0.5
int i;
double xaver=0.0, x2aver=0.0;
for(i=0;in;++i){
xaver+=x[i]; x2aver+=x[i]*x[i];
}
xaver/=n; x2aver/=n; //求x的平均、x^2的平均
return sqrt(x2aver-xaver*xaver);
}
int main(){
double x[5];
int i;
printf("Input 5 datas:\n");
for(i=0;i5;++i){
scanf("%lf",x[i]);
}
printf("\nFangCha S=%.4lf",fangcha(x,5));
printf("\nFinished!\n");
getch();
return 0;
}
希望能帮助到你。
c语言怎么求字符的ascii码
#include stdio.h
int main()
{
char a;
a=getchar();
printf("所输入的ASCII码为:%d",a);
return 0;
}
扩展资料:
ASCII ((American Standard Code for Information Interchange): 美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。它是最通用的信息交换标准,并等同于国际标准ISO/IEC 646。ASCII第一次以规范标准的类型发表是在1967年,最后一次更新则是在1986年,到目前为止共定义了128个字符。
大小规则:
常见ASCII码的大小规则:0~9A~Za~z。
1)数字比字母要小。如 “7”“F”。
2)数字0比数字9要小,并按0到9顺序递增。如 “3”“8‘’。
3)字母A比字母Z要小,并按A到Z顺序递增。如“A”“Z” 。
4)同个字母的大写字母比小写字母要小32。如“A”“a” 。
几个常见字母的ASCII码大小: “A”为65;“a”为97;“0”为 48。
参考资料来源:百度百科-ASCII
c语言 求a^b
//参数是这样写的function4=power(a,n)*term(n)/n;
//其中你的dem()
函数完全可以不用,直接使用n就可以了,
//并且你的分母dem()是有错误的,不能够达到要求
#include
stdio.h
#include
math.h
float
power(float
m,
float
n)
{
float
function1;
int
i;
function1=1;
for
(i=1;i=n;i++)
function1=function1*m;
return
function1;
}
float
term(float
n)
{
float
function2;
int
i;
function2=-1;
for
(i=1;i=n;i++)
function2=(-1)*function2;
return
function2;
}
float
dem(float
n)
{
float
function3;
int
i;
function3=0;
for
(i=1;i=n;i++)
function3=function3+1;
return
function3;
}
int
main(void)
{
float
a,n=1,m,function4=0,sum=0;
printf("please
put
the
value
of
a
\n");
scanf("%f",a);
do
{
function4=power(a,n)*term(n)/n;
sum=sum+function4;
n++;
}
while
(fabs(function4)fabs(sum/1000000));
printf("%f",sum);
getchar();getchar();
return
0;
}