0

我的说明:编写一个程序,开始询问用户正态分布的均值 u 和标准差 s(参见wiki 文章

然后程序请求一个 N,然后请求 N 个值 x。对于每个 x,它都会写到f(x)屏幕上。请注意,程序仅向用户询问 u、s 和 N 一次。之后,它会一一请求 x 的 N 个值。在每个值 x 之后,它会写出函数的相应值。

我感到困惑的是N应该代表什么。我以为这是 x 的数量,但有人可以为我澄清一下吗?

#include <stdio.h>
#define _USE_MATH_DEFINES 
#include <math.h>
#include <stdlib.h>

int main()
{
double u,s, N, x1,math1, math2, math3,n, v, x;

printf("Enter Mean: ");
scanf("%lf", &u);
printf("Enter Standard Deviation: ");
scanf("%lf", &s);
printf("Enter number of x's: ");
scanf("%lf", &N);

    for (v=1; v<=N; v++)
    {
    printf("Enter Value: ");
    scanf("%lf", &x);
    n=(-1/2);
    printf("f(x)= ");
    math1 =1/(u*sqrt(2*M_PI));
    math2= (x-u)/s * (x-u)/s;
    math3= M_E * exp(n);
    x1 = math1 * exp(math3)*exp(math2);
    printf("%lf  \n", x1);
    }
system("Pause");
}
4

2 回答 2

2

N代表输入的数量

从这部分非常清楚: for (v=1; v<=N; v++)

于 2013-01-30T14:58:17.133 回答
1

如果您的说明是给定的,那么 N 确实代表所需的x值的数量。

您的程序就是这样做的,要求x的N个值。

首先,它在程序开始时声明了一个变量N

double u,s, N, x1,math1, math2, math3,n, v, x;

然后它提示输入为整数:

printf("Enter number of x's: ");
scanf("%lf", &N);

...最后使用该整数读取x的N个值。

for (v=1; v<=N; v++)
{
于 2013-01-30T14:59:32.313 回答