Code
//现值计算 CSP
#include <stdio.h>
#include<math.h>
int main() {
int j,n;
double i,sum = 0;
scanf("%d%lf",&n,&i);
int money[n];
for( j = 0; j <= n; j++) {
scanf("%d",&money[j]);
sum += money[j] * pow(1+i,-j);
}
printf("%.3f",sum);
return 0;
}
思路
其实该题已经告诉我们答案,即公式,如下👇
结尾也给了我们注意类型,如下👇
所以,直接套用公式即可
新函数
pow()
C语言 pow() 函数用来求 x 的 y 次方的值。
头文件:math.h
语法/原型:
double pow(double x,double y);
参数说明:
x:双精度数。double类型
y:双精度数。
返回值:x 的 y 次方的值。
例子:使用 pow() 函数求 4 的 6 次方,其代码如下:
#include <stdio.h>
#include <math.h>
int main() {
double x = 4, y = 6; //为变量赋初值
double result = pow(x, y); //求a的b次方
printf("%lf\n", result);
return 0;
}