用C语言编写一个求立方的程序

恳请高手用C语言编写一个程序,符合
2^-1=0.5
2^0=0
2^1 =2
2^2 =4
2^3 =8
2^4 =16
2^5 =32
2^6 =64
2^7 =128
以此类推的程序。
若更高手些,恳请编写一个 输入整数A,之后再输入次方B(B为正整数或负整数),输出相应的结果的程序。谢谢。
是否可以改进一下,例如输入 2,另外再输入-10 1000,则自动的把所有2的-10 到1000次方全部“分别”计算并“分别”输出呢?

第1个回答  推荐于2017-09-04
#include <stdio.h>
#include<math.h> //pow()所需的头文件
int main(int argc, char *argv[])
{
int a,b;
scanf("%d%d",&a,&b);
double sum=pow(a,b);//调用计算平方的库函数
printf("%.2f",sum);//.2f保留小数点后两位

return 0;
}追问

谢谢。。是否可以改进一下,例如输入 2,另外再输入-10 1000,则自动的把所有2的-10 到1000次方全部“分别”计算并“分别”输出呢?

追答

#include
#include //pow()所需的头文件
int main(int argc, char *argv[])
{
int a,b,c;
scanf("%d%d%d",&a,&b,&c);

for(int i=b;i<=c;i++){
double sum=pow(a,i);//调用计算平方的库函数
printf("%.2f\n",sum);//.2f保留小数点后两位
}
return 0;
}

追问

for(int i=b;i<=c;i++){ 这句有如下的错误提示
[Error] E:\XP\TC0021.c:7: error: 'for' loop initial declaration used outside C99 mode
这是什么原因引起的呢?

您的程序,我用了VS2010还有C-Free两款软件,都“不可以”运行呢。哪里错了呢?

追答

1、代码第二行在提交的时候出现乱码,改为第一次提交时的样子。
2、若还提示错误,把for循环里的int i放在该行之前定义。
(该代码已在c-free编译通过)。

追问

谢谢。完全正确了。
但为什么
0.5 2 2
2 0.5 0.5
的运行结果,都会出错呢?

追答

#include
#include //pow()所需的头文件
int main(int argc, char *argv[])
{
double a,b,c;
scanf("%lf%lf%lf",&a,&b,&c);

for(double i=b;i<=c;i++){
double sum=pow(a,i);//调用计算平方的库函数
printf("%lf\n",sum);
}
return 0;
}

本回答被提问者采纳
相似回答