|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
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;
- }
复制代码
|
|