求大佬解决
/**程序目的:
*
* 为实现0.2和-3的1到9次幂函数计算,
*并将结果输出到屏幕
*
*/
#include <stdio.h>
int power(double m, int n)
main()
{
int i;
for(i==n;i<=10;i++)
{
printf("%f #d &d \n",i,power(n,2,i),power(-3,i));
}
return;
}
int power(double base, int n)
{
int i, p;
p = 1;
for (i = 1; i < n; ++i)
p = p *base;
return p;
}
这代码错在哪?怎么改?求正确源代码
本帖最后由 liuzhengyuan 于 2020-4-29 15:01 编辑
①主函数里的 for 错了
应该是 i=n
不是 i==n
②你的变量 n,没有定义 liuzhengyuan 发表于 2020-4-29 14:57
主函数里的 for 错了
应该是 i=n
不是 i==n
根本就没有n,他这代码我都不知道写的什么,注释还写不明白 本帖最后由 sunrise085 于 2020-4-29 15:09 编辑
基本错误太多了
power函数返回值不应该是int,函数声明结尾居然没有分号
for循环初始条件应该是i=1
printf中#d和&d是什么鬼?
power(n,2,i)又是怎么个意思?
power函数定义中for循环次数不对。
等等,问题太多了
#include <stdio.h>
double power(double m, int n);
int main()
{
int i;
for(i=1;i<10;i++)
{
printf("%d %.9lf %.0lf \n",i,power(0.2,i),power(-3,i));
}
return 0;
}
double power(double base, int n)
{
int i;
double p;
p = 1;
for (i = 1; i <= n; ++i)
p = p *base;
return p;
} 0.2的n次方用 int类型也有问题吧? 这里有许多错误,例如如果调用power函数,则需要#include<math.h>头文件。而且这里建议使用pow函数,pow函数也需要调用math头文件。还有,我建议您给每个程序做好注释。望采纳
页:
[1]