A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© Mal 中级黑马   /  2015-7-20 22:32  /  655 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

#include <stdio.h>
#include <math.h>

int main(int argc, const char * argv[]) {
   
    int k=1,t=1;//k是每一项的分母,t用来控制正负号
    double tn=1,sn=0;
    /**
     *  π=4*(1-1/3+1/5-1/7+...)直到某一项的绝对值小于10的6次方为止
     */
    while (fabs(tn)>=1e-6) {
        tn=1/(float)k*t;//tn是没一项的值
        sn=sn+tn;       //sn是所有的tn值的和
        k=k+2;          //分母以后每项值都加2
        t=-t;
   
    }
     sn=sn*4;
   
    printf("π的值约等于%.6f\n",sn);

    return 0;
}
您需要登录后才可以回帖 登录 | 加入黑马