相信大家在做題時,應(yīng)該都會有這樣的感覺,明明是一個簡單的語法,卻要每次都重復(fù)寫下來,一個語法復(fù)雜而且容易出錯,改半天卻找不到點(diǎn)。特別是對于一些數(shù)學(xué)基礎(chǔ)較差的同學(xué),可能會經(jīng)常在數(shù)學(xué)式子上出錯。
本期,就通過一道例題為大家講述一下函數(shù)的用法。
1016:銀行利率
題目描述
設(shè)銀行1年期定期存款年利率為2.25%,存款本金為deposit元,試編程計(jì)算并輸出n年后的本利之和。輸入
輸入一個正整數(shù)和一個實(shí)數(shù),分別代表存款年數(shù)和存款本金。輸出
輸出一個雙精度實(shí)數(shù),小數(shù)點(diǎn)后保留6位有效數(shù)字。參考代碼:
#include<stdio.h>
#include<math.h>
#define RATE 0.0225
main()
{
int a;
double b;
double c;
scanf("%d%lf",&a,&b);
c=b*pow(1+RATE,a);
printf("%.6f\n",c);
return 0;
}
- 代碼解析:
本題中,大家應(yīng)該能看到兩個新鮮的事物,一個是頭文件#include<math.h>,一個是pow()函數(shù)。
1.math.h頭文件指的是引用math函數(shù)庫,只有在頭文件上標(biāo)明了這個庫,下面我們才可以使用里面的函數(shù),具體的函數(shù)比較多,需要解決數(shù)學(xué)問題時不妨好好看看這個庫有沒有自己需要的函數(shù)可以調(diào)用→math函數(shù)庫
2.pow()函數(shù)的作用是 用來求 x 的 y 次冪(次方),x、y及函數(shù)值都是double型 ,其原型為:
double pow(double x, double y);
讓我們回到題目本身,題目要求計(jì)算n年后的本利之和。年利率為2.25% 本金為一個參數(shù),需要計(jì)算本金×利息+上本金的總和。
讓我們梳理一下計(jì)算過程 ,設(shè)本金為1w(萬),我們要計(jì)算2年后的本利之和,這樣的話,它第一年的利息就是10000×2.25%=225;這樣第一年結(jié)束的本金就變成了10225;我們要把這筆錢重新存進(jìn)去,它這時再計(jì)算利息的時候就成了,10225×·2.25%=230.0625;最后得出得本利之和為10455.0625;是不是光看過程覺得特別復(fù)雜,如果把這段過程的相同數(shù)據(jù)合并一下,變成10000×(1+0.0225)2=10455.0625,是不是瞬間就簡單多了。所以,我們在這里要引用一個求冪函數(shù)的函數(shù)pow函數(shù),把代碼簡單化。