永发信息网

这个C语言无法得解

答案:4  悬赏:40  手机版
解决时间 2021-04-27 14:19
  • 提问者网友:低吟詩仙的傷
  • 2021-04-27 07:32

#include<stdio.h>
#include<math.h>
#define PI 3.1416
main()
{
int deg;
float rad,s,c,t;
printf("Degree Sine Cosine Tangent\n");
printf("====== ==== ====== =======\n");
deg=0;
while(deg<=80)
{
rad=deg/180.0*PI;
s=sin(rad);
c=cos(rad);
t=tan(rad);
printf("%6d %.2f %3.2f %4.2f\n",rad,s,c,t);
deg=deg+10;
}
}

======================================================

运行后应该会自动加10度并得出结果,可是这个程序得出都是0

最佳答案
  • 五星知识达人网友:底特律间谍
  • 2021-04-27 08:43
没看出你的程序哪有错啊
全部回答
  • 1楼网友:酒醒三更
  • 2021-04-27 11:06

该没有任何问题,请问lz采用的编译器是什么名称、版本?

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

#define PI 3.1416

int main(void) { //int deg; float deg; float rad, s, c, t; printf(" Degree Sine Cosine Tangent\n"); printf("========== ========== ========== ==========\n"); deg = 0; while(deg<=80) { rad=deg/180.0*PI; s = sin(rad); c = cos(rad); t = tan(rad); printf("%6d %.2f %3.2f %4.2f\n", rad, s, c, t); deg = deg + 10; } return 0; }

我用Borland C/C++ Compiler 5.5免费版编译/执行,完全是OK的。

  • 2楼网友:撞了怀
  • 2021-04-27 10:49
定义deg时应当赋初值0,
  • 3楼网友:夜风逐马
  • 2021-04-27 09:13
rad=deg/180.0*PI; 问题就出在这里了 你的deg定义的是int 而出初始亮又比180小 所以除的的结果也默认是int 当然就是0了 应该把rad定义为float
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯