第二周《C语言及程序设计》实践参考34 用循环累加

来源:互联网 发布:2016移动支付市场数据 编辑:程序博客网 时间:2024/05/21 12:50
【项目1:分数的累加】
/*   * Copyright (c) 2016, CSDN学院   * All rights reserved.   * 文件名称:【项目1:分数的累加】.cpp   * 作    者:张易安   * 完成日期:2016年 8 月 17 日   * 版 本 号:v1.0   *   * 问题描述:编程序,输出1/3-3/5+5/7-7/9…+19/21的结果 */ #include<stdio.h>int main(){int i,a=-1;double sum=0;for(i=1;i<=20;++i){sum = sum+double(2*i-1)/(2*i+1)*a;a=-a;}printf("%f",sum);return 0; } 

运行结果


心得体会

老师这个思路很让人受启发,让我想起来了一句话:自顶向下,逐步求精!总之是一步一步的细化。“品品这种思路,一口吃不成胖子,学会一口一口吃饭。用心编程,再大的障碍,也会一个一个地排除。”


【项目2:麻烦的累加涨功夫】

/*   * Copyright (c) 2016, CSDN学院   * All rights reserved.   * 文件名称:【项目2:麻烦的累加涨功夫】.cpp   * 作    者:张易安   * 完成日期:2016年 8 月 17 日   * 版 本 号:v1.0   *   * 问题描述:s=1-1/2^1+1/2^2-...+1/2^8 */ #include<stdio.h>int main(){int i,j=1;double sum=0,s=1.0;for(i=1;i<=8;++i){sum = sum + s/j;j=j*2;s=-s;}printf("%f",sum);return 0; } 

运行结果



【项目2:麻烦的累加涨功夫】(2)

/*   * Copyright (c) 2016, CSDN学院   * All rights reserved.   * 文件名称: *【项目2:麻烦的累加涨功夫】.cpp   * 作    者:张易安   * 完成日期:2016年 8 月 17 日   * 版 本 号:v1.0   *   * 问题描述:计算1-1/2!+1/3!-....+1/9!  */ #include<stdio.h>int main(){int i,j=1;double sum=0,s=1.0;for(i=1;i<=9;++i){sum = sum + s/j;j=j*(j+1);s=-s;}printf("%f",sum);return 0; } 
/*   * Copyright (c) 2016, CSDN学院   * All rights reserved.   * 文件名称: *【项目2:麻烦的累加涨功夫】.cpp   * 作    者:<a target=_blank href="http://my.csdn.net/sxhelijian" class="user_name" target="_blank" style="text-decoration: none; color: rgb(102, 102, 102); display: inline-block; font-stretch: normal; font-size: 16px; line-height: 20px; font-family: 'microsoft yahei'; text-align: center;">迂者-贺利坚</a> * 完成日期:2016年 8 月 17 日   * 版 本 号:v1.0   *   * 问题描述:计算1-1/2!+1/3!-....+1/9!  */ #include <stdio.h>  int main( )  {      int i,f=1;  //f表示加数分母上的阶乘,初值1为1的阶乘      double sum=0, s=1.0; //s直接取double型,保证除的结果是浮点型      for(i=1; i<=9; ++i)      {          f*=i;   //计算得到i的阶乘          sum=sum+s/f;//1楼指出的错误表达式是sum=sum+s*i/f;          s=-s;      }      printf("%f\n", sum);      return 0;  }  

运行结果



心得体会

我的是在第一个的基础上直接改的

0 0
原创粉丝点击