######初学者遇到一个问题 计算e^x=1+x+(x^2)/(2!)+(x^3)/(3!)+(x^4)/(4!)+...+(x^n)/n!输入输出格式要求:
输入格式:x n回车
e^x, x, n均用double类型存储。
要求输出小数点后6位。
只输出运算结果,请不要输出其他字符,遇到异常情况(如n为负数),输出error
#include
int main() {
double e, x, n, sum, xsum, nsum, j;
int i;
scanf("%f%f", &x, &n);
for (i = 1; i <= n; i++) {
sum = 0;
xsum = 1;
nsum = 1;
for (j = 1; j <= i; j++) {
xsum *= x;
nsum *= j;
}
sum += (xsum / nsum);
}
e = sum + 1;
printf("%.6f", e);
return 0;
}
scanf("%lf%lf", &x, &n);
scanf两个%f中间加个空格,double要用%lf,输入和输出都是
听了大家的回答能输出6位数了,就是用数字测试答案都是错的qwq是我这个程序有什么逻辑问题吗