24小时热门版块排行榜    

查看: 694  |  回复: 2

elflegolas

铁虫 (初入文坛)

[求助] 函数递归调用求幂,为什么float可以double不行?

很简单的程序啦,子函数递归调用求幂:
#include
float power(float x,int m)
{
    if(m==1)
        return x;
    else
        return  x*power(x,m-1);
}
int main()
{
    float a;
        int b;
    printf("please input two number:\n";
    scanf("%f%d",&a,&b);
    printf("the number is %.2f\n",power(a,b));
        return 0;
}
用的是VC++6.0,程序中下划线的两处如果将float改成double程序就不能得到正确结果,想不通什么原因。求助。
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fdesheng

木虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
#include
double power(double x,int m)
{
    if(m==1)
        return x;
    else
        return  x*power(x,m-1);
}
int main()
{
    double a;
    int b;
    printf("please input two number:\n";
    scanf("%lf%d",&a,&b);
    printf("the number is %.2f\n",power(a,b));
        return 0;
}
这样可以我试着,scanf的那儿稍微修改了一下。
2楼2012-09-06 21:59:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
elflegolas: 金币+5, ★★★★★最佳答案, 谢谢,谢谢,我基础知识太薄弱了 2012-09-07 08:37:23
xzhdty: 金币+2, 专家考核, 谢谢骠骑将军 2012-09-07 22:49:13
仔细看书,float和double虽然都是浮点数,但是printf和scanf的时候需要不同的格式
float对应%f,double对应%lf
所以你的程序从float改为double后只需要添加2个小写字母L(l)即可
CODE:
#include
double power(double x,int m)
{
    if(m==1)
        return x;
    else
        return  x*power(x,m-1);
}
int main()
{
    double a;
    int b;
    printf("please input two number:\n");
    scanf("%lf%d",&a,&b);
    printf("the number is %.2lf\n",power(a,b));
    return 0;
}

matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
3楼2012-09-06 23:45:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 elflegolas 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +31 医学老男孩 2026-08-13 69/3450 2026-08-16 00:16 by mo_mo_mo_mo
[基金申请] 时间戳又变了8-15 +12 archvillain 2026-08-15 23/1150 2026-08-15 20:47 by foyo404
[基金申请] 哪位老哥知道今年的国自然具体哪一天放榜? +7 Ldrop2023 2026-08-13 7/350 2026-08-15 15:57 by mzhh2000
[基金申请] 关于Filecode分析方法 +10 majunge000 2026-08-10 13/650 2026-08-15 12:26 by hanpeng972
[基金申请] 各位道友,我要去昆明玩几天,回来见。 +7 Tide man 2026-08-14 8/400 2026-08-15 01:11 by arzu_hma
[基金申请] 是这周出结果还是下周出结果? +4 yuleib84 2026-08-11 4/200 2026-08-14 23:05 by lfy8008
[基金申请] 奇怪,两个人的filecode固定段从头到尾一模一样 +8 布布和一二 2026-08-10 11/550 2026-08-14 14:58 by Equinoxhua
[基金申请] 应该是93bebmhtak前后十一个字符比较关键 +23 Lanmanbaby 2026-08-09 37/1850 2026-08-14 13:40 by Equinoxhua
[硕博家园] 读博的好处 +4 lnee 2026-08-11 4/200 2026-08-14 10:20 by ahsoarli
[基金申请] 我的国基提前知道中了,可是同事的操作让我实在接受不了,怎么会有这样的人 +10 家与远方 2026-08-10 15/750 2026-08-14 02:08 by 绵羊哥哥
[基金申请] 静等基金结果 +8 gjjjzhong 2026-08-10 21/1050 2026-08-13 17:56 by 且听虎啸
[基金申请] 重要来源:本周末出结果 +10 瞬息宇宙 2026-08-12 10/500 2026-08-13 15:46 by likettle
[基金申请] 不应该看fileCode +7 且听虎啸 2026-08-12 9/450 2026-08-13 14:27 by flydreamws
[基金申请] Filecode 又变了,巨变 +3 WH3796 2026-08-12 4/200 2026-08-13 14:13 by 小木虫6752397
[基金申请] 分享一下我之前已中青C的计划书的filecode +4 布布和一二 2026-08-11 5/250 2026-08-13 12:56 by cratir
[基金申请] 结合人工智能,周易传统文化,filecode打分制来了,3分以上希望很大。 +3 Tide man 2026-08-12 4/200 2026-08-13 08:35 by ZJTJZ
[基金申请] 帮忙看看fileCode +7 wwncly 2026-08-10 13/650 2026-08-11 19:36 by 冰心玉壶晴
[基金申请] 为什么网上很多人说本周 12号出结果 +6 瞬息宇宙 2026-08-10 7/350 2026-08-11 19:25 by Tide man
[基金申请] 什么时候出结果,有咨询渠道??? +3 Tide man 2026-08-11 3/150 2026-08-11 17:54 by kudofaye
[基金申请] 确定了,国自然21号放榜 +6 布布和一二 2026-08-10 7/350 2026-08-10 19:15 by 2000zf36392
信息提示
请填处理意见