首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用于打印每个基本指数的C函数,例如,integerPower( 3,4)=3*3*3*3

用于打印每个基本指数的C函数,例如,integerPower( 3,4)=3*3*3*3
EN

Stack Overflow用户
提问于 2014-11-03 19:05:20
回答 4查看 7K关注 0票数 0

我的程序好像不能运行了

编写一个函数integerPower(base,exponent),该函数返回base指数的值。例如,integerPower( 3,4)= 3 *3*3*3。假设指数为非零的正整数,基数为整数。函数integerPower应用于控制计算。不要使用任何数学库函数。

我有这个程序

代码语言:javascript
运行
复制
#include<stdio.h>

int power(int b, int e){

int x
for (x = 0; x <= e; x++)
    b=b;

return b;
}

void main(){
int b = 0;
int e = 0;

scanf("input a base %d\n", &b);
scanf("input an exponent %d\n", &e);

power(b,e);

printf("%d" , b);

}
EN

回答 4

Stack Overflow用户

发布于 2014-11-03 19:17:18

代码语言:javascript
运行
复制
#include<stdio.h>

int power(int b, int e){

    int x;
    int result = 1;
    for (x = 0; x < e; x++)
       result*=b;

    return result;
}

int main(){
    int b = 0;
    int e = 0;

    printf("Input a base ");
    scanf("%d", &b);
    printf("Input an exponent ");
    scanf("%d", &e);

    b = power(b,e);

    printf("%d" , b);
    return 0;
}

第一个问题是scanf函数。您使用的是“输入基础”。为了输出,你必须使用printf("input a base ")。

票数 1
EN

Stack Overflow用户

发布于 2014-11-03 19:18:03

尝试使用下面的函数来计算指数的幂的底数的值

代码语言:javascript
运行
复制
int ipower(int b, int e)
{
    int x, tmp = 1;

    for (x = 0; x < e; x++)
        tmp *= b;

    return tmp;
}

在这里,for循环被迭代e次,即从0到e-1。"tmp“将保存结果。

确保不要在循环中更改“b/e”(基/指数)的值,否则会导致错误的结果。

票数 0
EN

Stack Overflow用户

发布于 2021-02-13 23:12:09

在函数体中执行b*=b也不会有什么帮助。当你应该从用户输入b和e时,为什么要把它们初始化为零呢?试试这个:

代码语言:javascript
运行
复制
    #include<stdio.h>

int power(int b, int e) {
    int temp = b;
    int x;
        for (x = 1; x < e; x++)
            b *= temp;

    return b;
}
void main() {
    int b ;
    int e;
    scanf_s(" %d", &b);
    scanf_s(" %d", &e);

   int h= power(b, e);

    printf("%d", h);

}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26712892

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档