A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

#include<stdio.h>
int main(){
    int a;
    int jiecheng=1;
    printf("请输入要计算的阶乘的正整数:\n");
    scanf("%d",&a);
    for(int i=1;i<=a;i++){
        jiecheng*=i;
   
    }
    printf("%d的阶乘是:%d\n",a,jiecheng);
    return 0;


}

2 个回复

正序浏览
结果超出int类型的取值范围了
回复 使用道具 举报
int类型只占4个字节,最高位是符号位,储存范围是-2^31~2^31-1。17阶乘已经超过储存范围,所以会出现错误。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马