gpt4 book ai didi

c - 在 C 中使用 pow()

转载 作者:太空宇宙 更新时间:2023-11-04 06:30:36 24 4
gpt4 key购买 nike

我对我应该做的作业有这个问题。

[它说创建一个能够计算和显示S总和的程序]

像 S=1+1/4+1/8+1/16 ... 直到 1/[2 pow n]

所以我研究它并想出了这段代码

#include <stdio.h>
void main()
{
int n,i;
float p,s;
printf("Enter the maximum power n :");
scanf("%d",&n);
s=0;
p=0;
for (i=0;i<n;i++)
{
p+=1/pow(2, i);
s+=p;
printf("s = %f\n",s);
}
printf("The sum of this equation is :%f",&s);
}

但是当我执行它时,它总是像 S=0。 我做错了什么?

最佳答案

您正在使用 %f` 变量打印地址 ('&s)。使用错误的说明符会调用未定义的行为。你可能会得到任何东西。



此外,不需要变量 s。删除行



s+=p;  

应该是这样的:

#include <stdio.h>
int main(void)
{
int n,i;
float p;
printf("Enter the maximum power n :");
scanf("%d",&n);
p=0;
for (i=0;i<n;i++)
{
p+=1/pow(2, i);
printf("p = %f\n",p);
}
printf("The sum of this equation is :%f",p);
}

关于c - 在 C 中使用 pow(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21064628/

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