标题:小问题。。。关于int的位置。
取消只看楼主
zzh2015
Rank: 1
来 自:江苏扬州
等 级:新手上路
帖 子:32
专家分:0
注 册:2015-4-7
结帖率:90.91%
已结贴  问题点数:10 回复次数:0 
小问题。。。关于int的位置。
以下是一段代码:
#include<stdio.h>
long cmn(int m,int n);
int main(void)
{
    printf("c(8,3)=%d\n",cmn(8,3));
    return 0;
}
long cmn(int m,int n)
{
    int a=1,b;
    int k=1;
    int r=1;
    b=m-n;
    while(b>0)
    {
        a=a*b;
        b--;
    }
    while(m>0)
    {
        k=k*m;
        m--;
    }
    while(n>0)
    {
        r=r*n;
        n--;
    }
    return k/(a*r);
}
我这样写检验是正确的,但如果这样写:
#include<stdio.h>
long cmn(int m,int n);
int main(void)
{
    printf("c(8,3)=%d\n",cmn(8,3));
    return 0;
}
long cmn(int m,int n)
{
    int a=1,b;
    b=m-n;
    while(b>0)
    {
        a=a*b;
        b--;
    }
    int k=1;
    while(m>0)
    {
        k=k*m;
        m--;
    }
     int r=1;
     while(n>0)
    {
        r=r*n;
        n--;
    }
    return k/(a*r);
}
就是错误的。。。为什么呢?
搜索更多相关主题的帖子: include return 
2015-05-06 15:36



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-444901-1-1.html




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

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