使用与我的另一个问题中提到的相同的机器和 IDE(代码中的问题或我的 IDE/comp 有问题的第三段? )
我尝试运行此代码:
#include <stdio.h>
#define n 3
int main()
{
int i;
float values[n],sumval,svmean,tmp;
for(i=0;i<n;++i)
{
scanf("%f",&tmp);
values[i]=tmp;
sumval = sumval + values[i];
}
svmean = sumval/n;
printf("%f \n",svmean);
return(0);
}
上面的代码应该运行这个公式
这意味着它必须添加一些值并将结果除以它们的总数。
正如您在上面看到的,我创建了一个包含随机位置的数组,n
并要求用户为每个位置填写一个值,然后将它们全部相加并除以它们。
问题是它不起作用。无论输入是什么,它都只输出结果 7。
但是,如果我将 stdlib.h 包含到代码中,它就可以正常工作。
所以
- 问题 A:为什么只使用 stdio.h 库代码不能正常工作?代码的哪个元素需要 stdlib.h 库?
如您所见,该数组values[n]
似乎具有随机n
数量的单元格,但实际上我已经将此数字设置为等于 3(使用#define
)
- 问题 B:有没有办法用相同的 porpuse 运行代码,但让用户定义数组的大小,
values[n]
或者换句话说,让用户输入一个整数来设置n
in的值values[n]
?