gpt4 book ai didi

c - 程序中使用unsigned long long int和long long int计算数字幂的问题

转载 作者:行者123 更新时间:2023-11-30 19:28:59 25 4
gpt4 key购买 nike

我编写了两个函数来计算 c 中正数和负数的幂,但它没有打印任何内容

#include<stdio.h>

int Driver(int NUMBER, int EXPO, int ans){
while(EXPO>0)
{
ans = ans*NUMBER;
EXPO--;
}
return ans;
}

void Calculate_pos_power(int number, int expo)
{
int NUMBER = number;
int EXPO = expo;

unsigned long long int ans = 1;

unsigned long long int xxx=Driver(NUMBER,EXPO, ans);


printf("Answer is : %llu ",xxx);
printf("\n");
}

void Calculate_neg_power(int number, int expo)
{
int NUMBER = number;
int EXPO = expo;

long long int ans = 1;
long long int xxx = Driver(NUMBER,EXPO, ans);

int Driver(NUMBER,EXPO, ans);
printf("Answer is : %lli ",xxx);
printf("\n");
}
int main()
{
int number;
int expo;

printf("Enter the number\n");
scanf("%d",&number);

printf("Enter the exponent\n");
scanf("%d",&expo);

if(number<0)
{
void Calculate_neg_power(number,expo);
}
else{
void Calculate_pos_power(number,expo);
}

return 0;
}

我希望当数字小于0时,答案应该是long long int,当数字大于0时,答案应该是unsigned long long int。但它不返回任何值

最佳答案

您实际上并没有调用这些函数:

if(number<0)
{
void Calculate_neg_power(number,expo);
}
else{
void Calculate_pos_power(number,expo);
}

这些是函数声明,并且是无效的声明。

调用函数时,不要在其前面加上返回类型前缀。

if(number<0)
{
Calculate_neg_power(number,expo);
}
else{
Calculate_pos_power(number,expo);
}

您的一个函数中也有一个类似的声明,但它没有执行任何操作:

int Driver(NUMBER,EXPO, ans);

这可以删除。

关于c - 程序中使用unsigned long long int和long long int计算数字幂的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53398526/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com