| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2092 人关注过本帖
标题:为什么没显示算出来的答案啊?
只看楼主 加入收藏
木下瞳
Rank: 1
等 级:新手上路
帖 子:37
专家分:6
注 册:2017-9-24
结帖率:88.89%
收藏
已结贴  问题点数:20 回复次数:6 
为什么没显示算出来的答案啊?
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main() {
    int i, base, power;
    printf("please input the base:\n");
    scanf_s("%d", &base);
    printf("please input the power:\n");
    scanf_s("%d", &power);
    for (i = 0; i < power; i++)
        printf("%d^%d is %d\n", base, power + i, pow(base, power + i));
    system("pause");
}
图片附件: 游客没有浏览图片的权限,请 登录注册
搜索更多相关主题的帖子: 显示 include base power printf 
2018-03-12 23:02
LiGoudan
Rank: 3Rank: 3
等 级:论坛游侠
威 望:2
帖 子:20
专家分:148
注 册:2018-2-28
收藏
得分:5 
printf("%d^%d is %.lf\n", base, power + i, pow((double)base, power + i));


pow返回类型是double型,所以输出类型要改为浮点型
2018-03-12 23:32
Jeyyion_han
Rank: 5Rank: 5
等 级:职业侠客
威 望:4
帖 子:207
专家分:301
注 册:2018-1-22
收藏
得分:5 
嗯,pow输出的时候强制转换一下
2018-03-13 08:46
Jeyyion_han
Rank: 5Rank: 5
等 级:职业侠客
威 望:4
帖 子:207
专家分:301
注 册:2018-1-22
收藏
得分:0 
嗯,pow输出的时候强制转换一下
2018-03-13 08:46
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:5 
这里就不应该用pow函数,而不是 强制转换 一下。
(虽然强转看起来能解决问题)

2018-03-13 10:04
will丶
Rank: 6Rank: 6
等 级:侠之大者
威 望:8
帖 子:117
专家分:443
注 册:2015-10-19
收藏
得分:5 
第一,printf这个东西格式化输出不简单是你想的一样,有点坑人,尽量不要在里面做运算,因为它的运算顺序是反的(虽然这个程序不涉及,但是提个醒)
第二,就是类型问题,pow函数接受的是double类型的乘方运算,算法很复杂
第三,同意楼上观点,这里用pow函数实属是滥用

腾空类星陨,遥望若花生。
2018-03-13 14:42
木下瞳
Rank: 1
等 级:新手上路
帖 子:37
专家分:6
注 册:2017-9-24
收藏
得分:0 
谢谢大家
2018-03-13 16:12
快速回复:为什么没显示算出来的答案啊?
数据加载中...
 
   



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

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