永发信息网

C语言 X的N次幂程序问题

答案:4  悬赏:40  手机版
解决时间 2021-03-08 07:35
  • 提问者网友:嗝是迷路的屁
  • 2021-03-08 02:19
各位高手,帮小弟看看有什么问题! 小弟谢了!!!
#include<stdio.h>
#include<stdlib.h>
double fun(int x,int n)
{
int i;
double result=1;
for(i=0;i<n;i++)
{
result*=fun(x,n);
}
return(result);
}
main()
{
float x;
int n;
printf("Input n:\n");
scanf("%d %d",&x,&n);
printf("result=%f",fun(x,n));
}
最佳答案
  • 五星知识达人网友:像个废品
  • 2021-03-08 03:32
#include<stdio.h>
#include<stdlib.h>
double fun(float x,int n) /////x为float类型
{
int i;
double result=1;

for(i=0;i<n;i++)
{
result *=x; /////x 的n次幂,如果你想用嵌套实现,就不能用for循环了
}

return(result);
}
main()
{
float x;
int n;
printf("Input n:\n");
scanf("%f %d",&x,&n); /////x为float类型
printf("result=%f",fun(x,n));
}

如果用嵌套实现:
#include<stdio.h>
#include<stdlib.h>
double fun(float x,int n) /////xΪfloatÀàÐÍ
{
int i;
double result=1;

if(n == 0)
result = 1;
else
result = x * fun(x,n - 1);

return(result);
}
main()
{
float x;
int n;
printf("Input n:\n");
scanf("%f %d",&x,&n);
printf("result=%f",fun(x,n));
}
全部回答
  • 1楼网友:零点过十分
  • 2021-03-08 05:37
我改了下 n 是宏定义的 #include<stdio.h> #include<stdlib.h> #define N 5 double fun(float x) { int i; double result=1; for(i=0;i<N;i++) { result*=x; } return(result); } main() { float x; printf("Input x:\n"); scanf("%f",&x); printf("result=%f",fun(x)); }
  • 2楼网友:污到你湿
  • 2021-03-08 04:25
输出是不是有问题啊? 应该这样吧: 输入 2 (repeat=2) 1.5 2 输出 2.25 输入 2.0 10 输出 1024.00 如果这样可以这样写: #include int main( ) { int ri, repeat; int i, n; double x, mypow; scanf("%d", &repeat); for(ri=1; ri<=repeat; ri++) { scanf("%lf%d", &x, &n); for(mypow=1.0, i=0; i
  • 3楼网友:醉吻情书
  • 2021-03-08 04:11
最佳答案 呵呵 #include<stdio.h> #include <conio.h> double fun(float x,int n) { if(n) return x*fun(x,n-1); else return 1.; } int main() { float x; int n; printf("Input n:"); scanf("%d",&n); printf("Input x:"); scanf("%f",&x); printf("result=%f",fun(x,n)); getch(); }
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯