为了账号安全,请及时绑定邮箱和手机立即绑定

为什么这段代码num<=5时能算出正确结果,换成六以上的数就不对了?

为什么这段代码num<=5时能算出正确结果,换成六以上的数就不对了?

C
qq_守夜人_11 2017-09-24 20:23:05
#include<stdio.h>int main(){    int num;    char max;    max=1;    for (num=1;num<=5;num++)    {        max*=num;    }        printf("前十的乘积:%d\n",max);    return 0;}
查看完整描述

2 回答

?
onemoo

TA贡献883条经验 获得超454个赞

max 是 char 类型啊,这个类型只占一字节,作为整型,就算是无符号整型,其中能保存的最大值也只是 255,存不开 6 以上的阶乘

查看完整回答
2 反对 回复 2017-09-24
?
慕粉1242266

TA贡献1条经验 获得超1个赞

用数组就行了

查看完整回答
1 反对 回复 2017-09-24
  • 2 回答
  • 0 关注
  • 1618 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信