#include <stdio.h>
#include <math.h>
int main()
{
double principal = 1000.00; //本金
double rate = .05; //年利率
int year = 0; //存钱年数
double amount = 0; //本息和
printf("%4s%21s\n", “Year”, “Amount on deposit”);
for (year = 1; year <= 10; year++)
{
amount = principal * pow((1 + rate), year);
printf("%4d%21.2f\n", year, amount);
}
return 0;
}
这是一个年利率为5%的储蓄账号中存入1000美元,存储10年计算本息合金的程序。
其中:
● .05表示5%
● %后面的21定义了打印这个变量所占用的域宽,域宽取21表示打印这个变量需要占用21个字符的位置,如果最终显示出来的数值个数小于域宽则数据将自动的在域宽内向右对齐,这使得具有相同精度的浮点数整齐的显示在屏幕上
● 小数点后面的2定义了打印这个变量是所保留的精度(即小数点后面的有效数字个数,未定义则默认为6)
● 如果想让数据在域宽内向左对齐,可以在转换说明符中的%与域宽定义值之间加上一个减号(-),这个减号还可以用于实现整数或字符串输出的左对齐