qq_36628394 2016-11-12 17:31 采纳率: 100%
浏览 1158
已采纳

用VS2012写的c语言程序,编译没错误,但我执行的时候会停止,求大神帮我看看

目的是求n的阶乘
下面是程序
#include
int main()
{ int n,k;
k=0;
printf("请输入一个n值(注意:必须是整数,)");

scanf("%d",&n);

  while (0<=n)
  {  k=k*(1/n);
  n=--n;
  }   
  printf("结果是:%d\n",n);
  return 0;

}
编译没错,但我运行后输入数字就会异常停止,请问这是怎么回事,本人小白一个,求详细的讲解,多谢

  • 写回答

5条回答

  • 小灰灰_ 2016-11-13 03:36
    关注

    首先你的0<=n,就有问题当n=0时,1/0程序会崩溃,分母不能为0,还有就是n>1时,1/n始终为0;

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 彩灯控制电路,会的加我QQ1482956179
  • ¥200 相机拍直接转存到电脑上 立拍立穿无线局域网传
  • ¥15 (关键词-电路设计)
  • ¥15 如何解决MIPS计算是否溢出
  • ¥15 vue中我代理了iframe,iframe却走的是路由,没有显示该显示的网站,这个该如何处理
  • ¥15 操作系统相关算法中while();的含义
  • ¥15 CNVcaller安装后无法找到文件
  • ¥15 visual studio2022中文乱码无法解决
  • ¥15 关于华为5g模块mh5000-31接线问题
  • ¥15 keil L6007U报错