解题思路:
愉快的心情才能使自己身心投入!
每题笑话: 蹲坑的时候,手机只剩6%的电了,我寻思用完所有电就擦屁股走人。 看了一会这坨,老爸好像内急敲门:儿子好了没有啊。 我不假思索地回了句:马上,还有2%。 老爸嘟嚷着:球孩子,读了点书,拉个屎还能精确百分比了。
注意事项:
注意事项:学精C语言,必须在做题时尽量用比别人少的代码完成任务!
参考代码:
#include<stdio.h> #include<math.h> double x,n,i,sum=0; double fact(double n); double mypow(double x,double n); int main() { scanf("%lf%lf",&x,&n); for(i=1;i<=n;i++) { sum+=pow(-1,i-1)*mypow(x,i)/fact(i); } printf("%.4f\n",sum); return 0; } double fact(double n) { double j=1,s1=1.0; while(j<=i) { s1=s1*j; j++; } return s1; } double mypow(double x,double n) { double s2=0; s2=pow(x,n); return s2; }
有不懂得可以留言!看在小的这么用心的份上,看客老爷们点个赞吧!
0.0分
9 人评分
错误50%,求解问题出在哪儿 #include<stdio.h> #include<stdlib.h> double fact(int n) { int i; for(i=n-1;i>1;i--) n*=i; return n; } double mypow(double x,int n) { int i;double y; for(i=0,y=1;i<n;i++) y*=x; return y; } int main() { double x,sum=0;int n,i; scanf("%lf%d",&x,&n); for(i=1;i<=n;i++) sum+=mypow(-1,i-1)*mypow(x,i)/fact(i); printf("%.4lf\n",sum); return 0; }
#include"stdio.h" #include"math.h" double fact(double n) { if(n==1) return 1; else return n*fact(n-1); } double my(double n,double x) { return pow(x,n); } void main() { double i,x,n,s=0; scanf("%lf %lf",&x,&n); for(i=1;i<=n;i++) { s=s+pow(-1.0,i-1)*my(x,i)/fact(i); } printf("%.4lf",s); } 答案为什么错了 求解
这个代码是哪里错了吗?通过不了 #include<stdio.h> long double fact(int n) { long double m; if(n == 1) return n; return m = n * fact( n - 1); } long double mypow(long double x, int n) { int i; long double s = 1; for( i = 0; i < n; i++) s = s * x; if(n % 2 == 0) { s = -s; } return s; } int main() { int n, j; long double x, sum = 0; scanf("%lf%d",&x, &n); for(j = 1; j <= n; j++) { sum = sum + mypow(x, j) / fact(j); } printf("%.4Lf",sum); return 0; }
MaRk 2019-08-31 10:02:58 |
是交错级数不是正项级数
请教一下,我下面的程序运行都是对的,请问为什么判断答案错误呢 /*输入一个正数x和一个正整数n,求下列算式的值。要求定义两个调用函数:fact(n)计算n的阶乘;mypow(x,n)计算x的n次幂(即xn),两个函数的返回值类型是double。 x - x2/2! + x3/3! + ... + (-1)n-1xn/n! ×输出保留4位小数。*/ #include <stdio.h> #include <math.h> #include <stdlib.h> double fact(int n); double mypow(double x,int n); int i; int main() { double x,sum=0; int n; scanf("%lf %d",&x,&n); for(i=1;i<=n;i++) sum=sum+pow(-1.0,i-1)*mypow(x,n)/fact(n); printf("%.4lf\n",sum); getchar(); getchar(); return 0; } double fact(int n) { double a=1; for(i=1;i<=n;i++) a=a*i; return a; } double mypow(double x,int n) { double
double fact(double n) 和mypow为什么前边先写了一遍
简单的a+b (C语言代码)浏览:525 |
C语言训练-排序问题<2> (C++代码)浏览:925 |
【亲和数】 (C语言代码)浏览:579 |
P1001 (C语言代码)浏览:833 |
A+B for Input-Output Practice (V) (C语言代码)浏览:638 |
WU-蓝桥杯算法提高VIP-Quadratic Equation (C++代码)浏览:1804 |
2004年秋浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:1362 |
最小公倍数 (C语言代码)浏览:1087 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:727 |
C语言程序设计教程(第三版)课后习题11.8 (C语言代码)浏览:753 |
p0p08 2019-08-29 10:45:26 |
factor返回n为整型 应该为double型 在factor函数那里再加个double a=n; 把循环的n改成a 返回a就好了