gpt4 book ai didi

c - 总计 2's value is too strange!I can' t 获取正确的值

转载 作者:行者123 更新时间:2023-11-30 20:38:10 25 4
gpt4 key购买 nike

#include <stdio.h> 
#include <string.h>
#include <math.h>

int main(int argc, char* argv[]) {
char p[80],m[80];
int length1,length2,b,i,j,total,total2;

puts("input base Dividend Divisor");
scanf("%d %s %s",&b,&p,&m);

length1 = strlen(p);
length2 = strlen(m);

for (i=0;i<=length1;i++) {
total+=(p[i]-'0')*pow(b,length1-1);
length1--;
}

我认为两个 for 循环大部分是相同的。为什么我得不到我想要的。

    for (j=0;j<=length2;j++) {
total2+=(m[j]-'0')*pow(b,length2-1);
length2--;
}

printf("%d %d",total,total2);

return 0;
}

我无法获得正确的值。

最佳答案

使用scanf输入字符串不需要&。因此,代替这个:

scanf("%d %s %s",&b,&p,&m);

试试这个:

scanf("%d %s %s",&b,p,m);

另外,

total+=(p[i]-'0')*pow(b,length1-1);

total的初始值可能是一些垃圾值,需要初始化它:

total=0; total2=0;

关于c - 总计 2's value is too strange!I can' t 获取正确的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30283184/

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