C语言及算法设计课程实验三:最简单的C程序设计——顺序程序设计(三)

简介: C语言及算法设计课程实验三:最简单的C程序设计——顺序程序设计(三)

002666bd14564c568b6d93f837bf754f.jpg

一、实验目的

(1) 掌握c语言中使用最多的一种语句一赋值语句的使用方法。

(2) 掌握各种类型数据的输入输出的方法,能正确使用各种格式转换符。

(3) 进一步掌握编写程序和调试程序的方法。


二、 实验内容



d149455c4ae84b6a9efd03e321b86891.jpg


2.3、计算存款利息


(3)计算存款利息

有1000元,想存5年,可按以下5种办法存:

① 一次存5年期。

② 先存2年期,到期后将本息再存3年期。

③ 先存3年期,到期后将本息再存2年期。

④ 存1年期,到期后将本息存再存1年期,连续存5次。

⑤ 存活期存款。活期利息每一季度结算一次。

银行存款利率:请去银行査当日利率。

计算利息的公式如下

1年期定期存款利息为4.14%;

2年期定期存款利息为4.68%,

3年期定期存款利息为5.4%;

5年期定期存款利息为5.85%;

活期存款利息为0.72%(活期存款每一季度结算一次利息)。


如果r为年利率,n为存款年数,则计算本息和的公式为

1年期本息和:p=1000×(l + r);

n年期本息和:p=1000×(l + n×r);

存n次1年期的本息和:p=1000×(1+r)^n

活期存款本息和:p=1000× (1+r/4)^4n

说明:1000×(1+r/4)是一个季度的本息和。


三、 实验步骤

e13788a65b58407ca3b2718c3403abc9.jpg


3.3、顺序程序设计实验题目3:计算存款利息的实验步骤


(3)计算存款利息

有1000元,想存5年,可按以下5种办法存:

① 一次存5年期。

② 先存2年期,到期后将本息再存3年期。

③ 先存3年期,到期后将本息再存2年期。

④ 存1年期,到期后将本息存再存1年期,连续存5次。

⑤ 存活期存款。活期利息每一季度结算一次。

银行存款利率:请去银行査当日利率。

计算利息的公式如下

1年期定期存款利息为4.14%;

2年期定期存款利息为4.68%,

3年期定期存款利息为5.4%;

5年期定期存款利息为5.85%;

活期存款利息为0.72%(活期存款每一季度结算一次利息)。

如果r为年利率,n为存款年数。

则计算本息和公式


1年期本息和:p=1000×(l + r);

n年期本息和:p=1000×(l + n×r);

存n次1年期的本息和:p=1000×(1+r)^n

活期存款本息和:p=1000× (1+r/4)^4n

说明:1000×(1+r/4)是一个季度的本息和。


3.3.1、变量的声明

变量的声明 代码如下所示

// 变量的声明
float r5, r3, r2, r1, r0;   // 定期存款利息
float p, p1, p2, p3, p4, p5;  // 本息和


3.3.2、变量的赋值

变量的赋值 代码如下所示

// 变量的赋值
p = 1000;
r5 = 0.03;
r3 = 0.0275;
r2 = 0.021;
r1 = 0.015;
r0 = 0.0035;


3.3.3、计算五种方案得到的本息和

计算五种方案得到的本息和 代码如下所示

  // 计算五种方案得到的本息和
  p1 = p * (1 + r5 * 5);          //一次存5年期
  p2 = p * (1 + 2 * r2) * (1 + 3 * r3); //先存2年期,到期后将本息再存3年期
  p3 = p * (1 + 3 * r3) * (1 + 2 * r2); //先存3年期,到期后将本息再存2年期
  p4 = p * pow(1 + r1, 5);        //存1年期,到期后将本息再存1年期,连续存5次
  p5 = p * pow(1 + r0 / 4, 4 * 5);    //存活期存款,活期利息每一季度结算一次


3.3.4、输出五种方案得到的本息和

输出五种方案得到的本息和 代码如下所示

  // 输出五种方案得到的本息和
  printf("p1= %f\n", p1);         //输出按第1种方案得到的本息和
  printf("p2= %f\n", p2);         //输出按第2种方案得到的本息和
  printf("p3= %f\n", p3);         //输出按第3种方案得到的本息和
  printf("p4= %f\n", p4);         //输出按第4种方案得到的本息和
  printf("p5= %f\n", p5);         //输出按第5种方案得到的本息和

3.3.5、程序运行结果

计算存款利息的实验运行结果如下所示

0806ac4fdd9840648b6761daca9e1813.png

可以看到第一种方案的本息和是最高的。


输出运行结果时,得到6位小数,连同整数部分有10 位数字,而一个float 型变量只能保证6位有效数字,后面几位是无意义的。而且在输出款额时,入们一般只要求精确到两位小数(角、分),因此可以在printf 函数中用%10.2格式符输出。

最后5个语句可改为如下所示

  // 输出五种方案得到的本息和
  printf("p1=%10.2f\n", p1); //输出按第1种方案得到的本息和
  printf("p2=%10.2f\n", p2); //输出按第2种方案得到的本息和
  printf("p3=%10.2f\n", p3); //输出按第3种方案得到的本息和
  printf("p4=%10.2f\n", p4); //输出按第4种方案得到的本息和
  printf("p5=%10.2f\n", p5); //输出按第5种方案得到的本息和

运行结果如下所示


d629417a7bf249918db22fe7f77456d3.png

四、 实验总结

d39275d2555a44a2943b22e40fcbed8a.jpg


通过本次的实验:C语言及算法设计课程实验三:最简单的C程序设计——顺序程序设计(三),掌握了如下的几点。


-(1)掌握c语言中使用最多的一种语句一赋值语句的使用方法。

-(2)掌握各种类型数据的输入输出的方法,能正确使用各种格式转换符。

-(3)进一步掌握编写程序和调试程序的方法。


五、 实验完整程序


b7db63ecb19e4892854af44514e9e6fb.jpg


blog.csdnimg.cn/ddcfee7b064648b98f1bc79ea1ef8d3f.jpeg#pic_center)


5.3、顺序程序设计实验题目3:计算存款利息的实验完整程序


完整程序如下所示

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <math.h>
int main()
{
  // 变量的声明
  float r5, r3, r2, r1, r0;   // 定期存款利息
  float p, p1, p2, p3, p4, p5;  // 本息和
  // 变量的赋值
  p = 1000;
  r5 = 0.03;
  r3 = 0.0275;
  r2 = 0.021;
  r1 = 0.015;
  r0 = 0.0035;
  // 计算五种方案得到的本息和
  p1 = p * (1 + r5 * 5);          //一次存5年期
  p2 = p * (1 + 2 * r2) * (1 + 3 * r3); //先存2年期,到期后将本息再存3年期
  p3 = p * (1 + 3 * r3) * (1 + 2 * r2); //先存3年期,到期后将本息再存2年期
  p4 = p * pow(1 + r1, 5);        //存1年期,到期后将本息再存1年期,连续存5次
  p5 = p * pow(1 + r0 / 4, 4 * 5);    //存活期存款,活期利息每一季度结算一次
  // 输出五种方案得到的本息和
  //printf("p1= %f\n", p1);         //输出按第1种方案得到的本息和
  //printf("p2= %f\n", p2);         //输出按第2种方案得到的本息和
  //printf("p3= %f\n", p3);         //输出按第3种方案得到的本息和
  //printf("p4= %f\n", p4);         //输出按第4种方案得到的本息和
  //printf("p5= %f\n", p5);         //输出按第5种方案得到的本息和
  // 输出五种方案得到的本息和
  printf("p1=%10.2f\n", p1); //输出按第1种方案得到的本息和
  printf("p2=%10.2f\n", p2); //输出按第2种方案得到的本息和
  printf("p3=%10.2f\n", p3); //输出按第3种方案得到的本息和
  printf("p4=%10.2f\n", p4); //输出按第4种方案得到的本息和
  printf("p5=%10.2f\n", p5); //输出按第5种方案得到的本息和
  return 0;
}

a6a6a33a937f4dacbeecb8b22683f36c.jpg

相关文章
|
1月前
|
C语言
王桂林C语言从放弃到入门课程
课程目标16天,每天6节课,每节40分钟课堂实录,带你征服C语言,让所有学过和没有学过C语言的人,或是正准备学习C语言的人,找到学习C语言的不二法门。适用人群所有学过和没有学过C语言的人,或是正准备学习C语言的人!
25 2
王桂林C语言从放弃到入门课程
|
1月前
|
自然语言处理 算法 搜索推荐
C语言中谈论算法
C语言中谈论算法
10 0
C语言中谈论算法
|
1月前
|
算法 安全 C语言
使用C语言实现DES算法代码
使用C语言实现DES算法代码
|
1月前
|
C语言
C语言模块化程序设计
C语言模块化程序设计
21 0
|
1月前
|
自然语言处理 算法 搜索推荐
C语言用伪代码表示算法
C语言用伪代码表示算法
29 0
|
23天前
|
算法 C语言
【算法与数据结构】 C语言实现单链表队列详解2
【算法与数据结构】 C语言实现单链表队列详解
|
23天前
|
存储 算法 C语言
【算法与数据结构】 C语言实现单链表队列详解1
【算法与数据结构】 C语言实现单链表队列详解
|
1月前
|
存储 算法 搜索推荐
【C++ 数据结构与算法 一站式备考指南】一文掌握 数据结构与算法课程 知识点(二)
【C++ 数据结构与算法 一站式备考指南】一文掌握 数据结构与算法课程 知识点
94 2
|
1月前
|
存储 算法 C++
【C++ 数据结构与算法 一站式备考指南】一文掌握 数据结构与算法课程 知识点(一)
【C++ 数据结构与算法 一站式备考指南】一文掌握 数据结构与算法课程 知识点
51 2
|
1月前
|
存储 机器学习/深度学习 算法
C语言代码实现数据结构与算法
以上代码中,哈希表使用链表解决哈希冲突,每个链表节点包含一个键值对。hash函数用于计算键值对应的哈希值,insert函数用于向哈希表中插入一个键值对,若当前位置为空,则直接插入;否则,将新节点插入到链表末尾。search函数用于在哈希表中查找指定键值的值,若存在则返回其值,否则返回-1。
32 1