| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1106 人关注过本帖
标题:这代码有一行错误了,我不知道怎么改过来
取消只看楼主 加入收藏
支风儿
Rank: 2
等 级:论坛游民
帖 子:25
专家分:13
注 册:2013-4-6
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:3 
这代码有一行错误了,我不知道怎么改过来
#include <stdio.h>
#include <stdlib.h>
#include<math.h>
double  fact(int n);
int main()
{
    int i,n;
    double s;
    scanf("%d",&n);
  while(n!=0)
 { for(i=0;i<=n;i++)
    s=fact(i);
    printf("%lf\n",s);
    scanf("%d",&n);
 }
 return 0;
}

double fact(int n)
{
    int i;

    double s,count;
    s=1;
    for(i=1;i<=n;i++)
    {s=s*i;}
    do
    {  count=s%10+count;  //编译老是说这里错了,我不懂
        s=s/10;
      }
      while(s!=0);
      return count;

}


搜索更多相关主题的帖子: include double 
2013-05-07 13:12
支风儿
Rank: 2
等 级:论坛游民
帖 子:25
专家分:13
注 册:2013-4-6
收藏
得分:0 
回复 4楼 Explorerlxz
假如不将它定义成double,n的范围是1《n《50,那求阶乘的时候,是会溢出的
2013-05-07 15:34
支风儿
Rank: 2
等 级:论坛游民
帖 子:25
专家分:13
注 册:2013-4-6
收藏
得分:0 
回复 3楼 liu_鹏
好吧,我错了。。一个数阶乘之后得出来的数所有位上的数字相加的和,输入为多case输入。每个case只有一行,输入一个正整数n(1<=n <= 50),当输入0时结束

2013-05-07 15:36
支风儿
Rank: 2
等 级:论坛游民
帖 子:25
专家分:13
注 册:2013-4-6
收藏
得分:0 
回复 2楼 helloUJS
不能这样求余,我就不知道用什么方法求各位数字相加的和了
2013-05-07 15:37
快速回复:这代码有一行错误了,我不知道怎么改过来
数据加载中...
 
   



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

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