如何在输出中创建多个答案?

时间:2018-09-07 05:10:45

标签: c output

我写了一些代码,根据给定的数x计算方程。但是,当我想尝试重复此代码时,它不起作用。它说“声明结果,没有任何联系”。我要在x = 0,x = 10和x = -10时在控制台中进行输出。这是我的代码:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>    
#include <math.h>
int main()
{
  float x = 0.0, result;
  result = 1/(1+exp(x));
  printf("Exponential of %f = %f", x, result);
  return 0;
}

它仅适用于一个,但是当我复制它时将不起作用。我想做的只是重复一下,因此它将在控制台中输出三个数字的计算。谢谢<3

3 个答案:

答案 0 :(得分:1)

“重新声明”是指您复制行

 float x = 0.0, result;

如果您只是想做

float x = 0.0, result;
result = 1/(1+exp(x));
printf("Exponential of %f = %f", x, result);

用于计算不同x的结果的东西,突出如下:

float x = 0.0, result; // declaration - only once
result = 1/(1+exp(x));
printf("Exponential of %f = %f", x, result);
x = 0.5; // new value for the same variable
result = 1/(1+exp(x)); // new value for the same variable
printf("Exponential of %f = %f", x, result);

还考虑进行循环以排除复制代码。常见方法是:

  1. 确定何时可以使用x的值:可以是用户输入的值,也可以是startend范围内的值。
  2. 根据第1步的决定,您可以选择循环中的迭代次数以及停止循环的方法(条件)。
  3. 因此,请选择以下循环操作符:forwhiledo{}while并编写代码。

答案 1 :(得分:0)

float x = 0.0
printf("Exponential of %f = %f\n", x, 1/(1+exp(x));

x = 10.0
printf("Exponential of %f = %f\n", x, 1/(1+exp(x));

x = -10.0
printf("Exponential of %f = %f\n", x, 1/(1+exp(x));

答案 2 :(得分:0)

在C语言中,您不能重新声明变量,但是可以重新分配变量。

尝试:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>    
#include <math.h>
int main()
{
  float x = 0.0, result;
  result = 1/(1+exp(x));
  printf("Exponential of %f = %f\n", x, result);

  x=10.0;
  result = 1/(1+exp(x));
  printf("Exponential of %f = %f\n", x, result);

  x=-10.0;
  result = 1/(1+exp(x));
  printf("Exponential of %f = %f\n", x, result);

  return 0;
}

希望这会有所帮助。