各位高手,帮小弟看看有什么问题! 小弟谢了!!!
#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));
}
C语言 X的N次幂程序问题
答案:4 悬赏:40 手机版
解决时间 2021-03-08 07:35
- 提问者网友:嗝是迷路的屁
- 2021-03-08 02:19
最佳答案
- 五星知识达人网友:像个废品
- 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));
}
#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();
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯