新手的超级简单问题

来源:百度知道 编辑:UC知道 时间:2024/05/30 18:31:40
/* 文件名:abc.cpp */
#include <iostream.h>
#include <math.h>
void main()
{
int i,j,k;
k=pow(i,j);
cout << "输入底数和指数(空格隔开):";
cin >> i >> j;
cout << i << "的" << j << "次方=" << k << endl;
}

为什么怎么算结果都是0呢

晕死,开始的时候,i和j都还没赋值你就计算了K,然后再输入的i和j,当然为0了啊,改成这样:
新手的超级简单问题
悬赏分:0 - 离问题结束还有 14 天 23 小时
/* 文件名:abc.cpp */
#include <iostream.h>
#include <math.h>
void main()
{
int i,j,k;

cout << "输入底数和指数(空格隔开):";
cin >> i >> j;
k=pow(i,j);
cout << i << "的" << j << "次方=" << k << endl;
}

原因:
k=pow(i,j); 放的位置不对。i和就还没有输入,就进行了k=pow(i,j); 所以计算出来的值就不对。(默认为0)
附:pow默认数据类型应该是double

#include <iostream.h>
#include <math.h>
void main()
{
double i,j,k;

cout << "输入底数和指数(空格隔开):";
cin >> i >> j;
k = pow(i,j);
cout << i << "µÄ" << j << "´Î·½=" << k << endl;
}

/* 文件名:abc.cpp */
#include <iostream.h>
#include