C语言 不用循环和函数求 X的Y次方

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言 不用循环和函数求 X的Y次方相关的知识,希望对你有一定的参考价值。

只可以用运算符
只可以用运算符
其他的都不可以用

参考技术A 看能你能满足你要求? 能运行,注意不要溢出!

#include"stdio.h"
#include"math.h"
main()
int x,y;
long s;
printf("输入小x,y的值:");
scanf("%d,%d",&x,&y);/*输入时两个数要用,隔开*/
s=pow(x,y);
printf("%ld",s);

参考技术B 给个递归的吧,只能计算正整数次方,效率不高,还可能溢出......
int power(int x, int y)

if (y == 0) return 1;
else return x * power(x, y - 1);
参考技术C 求 X的Y次方的解决方案应该只有两种!
1 .递归
2 .循环

当然你也可以调用库函数!pow(x,y);
参考技术D result = X * X * X * ... (乘Y次) 第5个回答  2008-09-21 pow(x,y)
注意 要是 浮点型

C语言求n个数的阶乘和,使用for语句循环,一定要用套嵌for语句吗?不用套嵌的单层for可以吗,

C语言求n个数的阶乘和,使用for语句循环,一定要用套嵌for语句吗?不用套嵌的单层for可以吗,C语言for语句

当然可以用单层循环!看——

#include "stdio.h"
int main(int argc,char *argv[])
int i,t,k,n;
printf("Please enter n(int 0<n<13)...\\n");
if(scanf("%d",&n)!=1 || n<1 || n>12)
printf("Input error, exit...\\n");
return 0;

for(k=0,t=i=1;i<=n;t*=i++,k+=t);
printf("The result is %d\\n",k);
return 0;

运行样例:

参考技术A 你把计算阶乘的算法提取到一个函数呗。 参考技术B int sum = 0;
int nj = 1;
for (int i = 1; i < n; ++i)

nj *= i;

sum += nj;

参考技术C 可以,开个数组累乘 参考技术D n个不连续的数吗? 可能需要用到数组哦

以上是关于C语言 不用循环和函数求 X的Y次方的主要内容,如果未能解决你的问题,请参考以下文章

如何用C语言实现2的n次方

c语言怎么求出函数段地址

c语言 指数函数怎么表达?谢谢

C语言求n个数的阶乘和,使用for语句循环,一定要用套嵌for语句吗?不用套嵌的单层for可以吗,

2的n次方怎么编程

c语言中2的次方怎么写怎么表示?