药事管理与法规论文:C语言中一个非常奇怪的错误

来源:百度文库 编辑:神马品牌网 时间:2024/05/06 01:24:04
马上要考C语言了.这几天做了一下,朋友们放在共享中心的那具模拟考试软件....
居然发现这道题我被判错....
真的搞不懂....

题目如下:
给定程序的功能是:在x数组中存放n个采样值,计算并输出方差值。
(X1-X' )(X1-X' ) (X2-X' )(X2-X' ) (XN-X' )(XN-X' )
S =————————+—-————-—+…+————————
1 2 N
其中,X'为数组X中各元素的平均值.
例如n=8,输入:193.199、195.673、195.757、196.092、196.596、196.579、196.763、时,结果应为:1.135901。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的blank1.c中。
不得增行或删行,也不得更改程序的结构!

给出的源程序如下:让我们填空:
#include <stdio.h>

float fun(float x[], int n)
{ int j; float xa=0.0, s;
/************found************/
for (j=0; j<__1___; j++ )
xa += x[j]/n;
/************found************/
s = ___2___;
for (j=0; j<n; j++ )
/************found************/
s += (x[j]-xa)*(x[j]-xa)/___[color=firebrick]3[/color]___;
return s;
}
main ( )
{ float x[100] = {193.199, 195.673, 195.757, 196.051, 196.092, 196.596, 196.579, 196.763};
printf("%f\n", fun (x, 8));
}

我填的答案是: 1 :0;
2:0.0
3: (j+1)
结果2 处的答案是:0 结果我错,被扣分.
3 处的答案是:n 我百思不得其解.

希望各位考过二级C语言的同仁帮帮我啊!!!!!!
N可以,那换成J+1可以不?

第一个地方计算x[i]的平均值,所以循环到 j<n
第二个地方,累加器的初值,赋0.0
第三个地方,算\"误差平方\"(方差)的平均值,所以除 n

天,二级这么难吗?我4.1号也过二级啊!

C语言本事很大

操作系统几乎都是C语言写的

WINDOWS,LINUX...下的几乎所有程序也可以用C语言来写

只是单纯用C来调用API来写WINDOW图形界面的程序比较麻烦

但C功能强大,与底层契合也好 精通C的话用来提高自己能力不错