这段代码试图用泰勒级数计算正弦值,但存在几个问题。 首先,你传入的是角度值45,但泰勒级数要求输入是弧度值,所以计算结果会完全错误。其次,循环终止条件只检查了当前项的大小,但忽略了符号变化,可能导致提前退出或无限循环。 - 在调用sinus函数前,需要将角度转换为弧度。弧度 = 角度 * π / 180。 - 检查循环终止条件:当前项term可能为负值,你的条件`term < 0.001f && term > -0.001f`在term为负时可能永远不成立,导致无限循环。应该用绝对值判断,比如`fabs(term) < 0.001f`。