网站首页建设建议,wordpress论坛主题,厦门seo报价,ui设计基础知识返回#xff1a;贺老师课程教学链接【项目1-sin泰勒展式中的错误】下面是sin函数的泰勒展式#xff1a;(注#xff1a;x取弧度值#xff0c;而非角度值)编写了double mysin(double x)用于求sin值#xff0c;却“死”在了123上。剧透一下#xff0c;循环没有问题(当然问题…返回贺老师课程教学链接【项目1-sin泰勒展式中的错误】下面是sin函数的泰勒展式(注x取弧度值而非角度值)编写了double mysin(double x)用于求sin值却“死”在了123°上。剧透一下循环没有问题(当然问题会表现在循环中)。试着用调试工具找出问题出现在哪里然后给出解决问题的方案。#include#define pi 3.1415926double mysin(double x);double myabs(double x);int main( ){double angle;for(angle0; angle180; angle)printf(sin(%.0f°) %.3f\n, angle, mysin((angle/180)*pi));return 0;}//下面定义mysin函数求sin值double mysin(double x){double sumx,x_powx,item;int n1,fact1, sign1; //定义变量时赋初值已经将第一项考虑到累加和sum中do{factfact*(n1)*(n2); //fact用于表示阶乘在公式中作分母x_pow*x*x; //x_pow是分子中用于表示阶乘在公式中作分母sign-sign; //确定即将要累加的这一项的符号item x_pow/fact*sign; //计算出要累加的项sumitem; //将该项累加上去n2;}while(myabs(item)1e-5);return sum;}//下面定义myabs函数double myabs(double x){return ((x0)?x:-x);}提示请进入到mysin中后注意各变量的变化看通项是否会收敛从而使循环能够结束。[ 参考解答]【项目2-总是多一次】先阅读下面的程序。这样的结构经常用于重复性工作。执行一次程序要完成的工作后由操作人员选择决定是否还来一遍。#includevoid dosomething(int *p);int main( ){char choicey;int n0;while(choice!N choice!n){dosomething(n);printf(按 N 退出其他键继续....);scanf(%c, choice); //用choicegetchar();也一样}return 0;}void dosomething(int *p) //完成特定的业务{*p1; //本例中传地址, *p即nprintf(第%d次完成业务\n, *p);}阅读程序发现在不退出时想继续一次业务却……如图通过单步的方式找出问题的原因并自行查找资料找出解决的办法。[ 参考解答]