|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include <stdio.h>
int main()
{
int i,n;
double x,item,s;
double fact(int n),power(double x,int n);
printf("请输入一个正整数, ");
scanf("%d",&n);
printf("请输入一个实数, ");
scanf("%lf",&x);
s=0;
for(i=1;i<=n;i++);
if(x>=0) item=fact(n)/power(x,n);
else item=power(x,n)/fact(n);
s=s+item;
printf("x=%f,n=%f,s=%f\n",x,n,s);
}
double fact(int n),power(double x,int n)
{
int i;
double product,pow;
product=1;
for(i=1;i<=n;i++) product=product*i ;pow=power(x,n);
return product,pow;
}
本帖最后由 joker11111 于 2017-3-6 23:50 编辑
楼主代码格式很是混乱,需要调整,下次问题请说明自己的程序想要做什么,别人好帮你改,以下自己猜测楼主的目的,改一点格式,有问题后续再贴
#include <stdio.h>
#include <math.h>
//double的意思是双精度浮点型,并不是一次返回两个值,概念不清
double fact(int n);//函数的声明
//pow(x,y)函数是返回用来 x 的 y 次幂(次方) 需要包含头文件math.h
//其原型为:
// double pow(double x, double y);
int main()
{
int i,n;
double x,item,s;
double fact(int n);
printf("请输入一个正整数, ");
scanf("%d",&n);
printf("请输入一个实数, ");
scanf("%lf",&x);
s=0;
//for(i=1;i<=n;i++);
//if(x>=0) item=fact(n)/power(x,n);
//else item=power(x,n)/fact(n);
//s=s+item;
//printf("x=%f,n=%f,s=%f\n",x,n,s);
for(i=1;i<=n;i++)
{
//该在循环中处理的语句 for()语句后面不加分号;
if(x>=0)
{
item=fact(n)/pow(x,n);
}else
{
item=pow(x,n)/fact(n);
}
s=s+item;
printf("x=%f,n=%f,s=%f\n",x,n,s);
}
}
double fact(int n)
{
int i;
double product;
product=1;
for(i=1;i<=n;i++) product=product*i;
return product;
}
|
|