| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 435 人关注过本帖
标题:[求助]按教程中循环算法运行不对请教?
只看楼主 加入收藏
gxjxdqk
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2005-1-18
收藏
 问题点数:0 回复次数:2 
[求助]按教程中循环算法运行不对请教?

main()
{
int b,c;
long int a;
a=1,b=2;
printf("求1*2*3*N的值!\n");
printf("请输入N循环的次数:");
scanf("%d",&c);
while (b<=c)
{
a=a*b;
b++;

}
printf("你输入的数最后乘积为:%d\n",a);
}

帮我看看是哪不对,C可以输入到11有效,大于11显示结果就不对了,12为负了,请高手帮忙

搜索更多相关主题的帖子: 运行 教程 算法 
2006-03-07 11:53
ヤ順祺冄繎ヤ
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:3032
专家分:0
注 册:2005-11-9
收藏
得分:0 
以下是引用gxjxdqk在2006-3-7 11:53:00的发言:

main()
{
int b,c;
long int a;
a=1,b=2;
printf("求1*2*3*N的值!\n");
printf("请输入N循环的次数:");
scanf("%d",&c);
while (b<=c)
{
a=a*b;
b++;

}
printf("你输入的数最后乘积为:%d\n",a); //printf("你输入的数最后乘积为:%ld\n",a);
}

帮我看看是哪不对,C可以输入到11有效,大于11显示结果就不对了,12为负了,请高手帮忙

在输出long型的时候,格式为%ld
应该是溢出的问题吧.

2006-03-07 12:07
虫的传人
Rank: 1
等 级:新手上路
帖 子:88
专家分:0
注 册:2006-3-5
收藏
得分:0 
在VC里运行没错误啊,到17才开始溢出
ps:变成负数了就是溢出了

好马不吃回头草 然而,我不是好马 可见,坏马也不吃回头草
2006-03-07 12:13
快速回复:[求助]按教程中循环算法运行不对请教?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017040 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved