用C语言创建一个小型统计程序
我从我写的一个程序中得到了一些错误。我试图制作一个程序,可以找到数据中的项目数量、数据中的高值和低值、平均值、中位数、模式、方差和标准差 我得到的错误是错误:从(path)filename.c引用的未解析外部“_-mean”用C语言创建一个小型统计程序,c,C,我从我写的一个程序中得到了一些错误。我试图制作一个程序,可以找到数据中的项目数量、数据中的高值和低值、平均值、中位数、模式、方差和标准差 我得到的错误是错误:从(path)filename.c引用的未解析外部“_-mean” #include <stdio.h> #include <stdlib.h> #include <math.h> void readData(float[],int count); float dataMean(float[]
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
void readData(float[],int count);
float dataMean(float[],int count);
float dataSd(float[],int count);
float dataMin(float[],int count);
float dataMax(float[],int count);
float dataMedian(float[],int count);
int main()
{
float data[200];
int choice,count=0,i;
do
{
printf("*****************************************************************\n");
printf("* This program will perform the following: *\n");
printf("* 1.Enter Data *\n");
printf("* 2.Display the data and the following statistics: *\n");
printf("* The number of date item, the high and low values in the *\n");
printf("* data, the mean, median, mode, variance and standard deviation.*\n");
printf("* 3.Quit the program *\n");
printf("*****************************************************************\n");
printf("\n\nYour Choice: ");
scanf("%d",&choice);
printf("Enter one data item after each prompt.\n");
printf("Enter -1 with when you are done with data input.\n\n");
switch(choice)
{
case 1:
readData(data,count);
break;
case 2:
printf("\nGiven data: \n");
printf("%.2f ",data[i]);
printf("\n\nTotal no of data items: %d",count);
printf("\nHighest value in the data: %.2f",dataMax(data,count));
printf("\nLowest value in the data: %.2f",dataMin(data,count));
printf("\nMean: %.2f",dataMean(data,count));
printf("\nMedian: %.2f",dataMedian(data,count));
printf("\nStandard Deviation: %.2f",dataSd(data,count));
printf("\nVariance: %.2f\n\n",pow((dataSd(data,count)),2));
break;
case 3:
exit(0);
}
}while(1);
getchar();
return 0;
}
void readData(float data[],int count)
{
int value = 0;
int item[200];
printf("Item #%d:\t",value++);
scanf("%f",&item);
while((item) != EOF)
{
printf("Item #%d:\t",value++);
scanf("%f",&item);
}
return *item;
}
float dataMean(float *data,int count)
{
int i;
float mean=0.0;
for(i=0;i<count;i++)
{
mean+=data[i];
}
return mean/count;
}
float dataSd(float data[],int count)
{
float avg=dataMean(data,count);
float SD =0.0;
int i;
for(i=0;i<count;i++)
{
SD+= pow((data[i]-avg),2);
}
return sqrt(SD/count);
}
float dataMax(float data[],int count)
{
int i=0;
float max=data[0];
for(i=0;i<count;i++)
if(max<data[i])
max=data[i];
return max;
}
float dataMin(float data[],int count)
{
int i=1;
float min=data[0];
for(i =0;i<count;i++)
if(min>data[i])
min=data[i];
return min;
}
float dataMedian(float data[],int count)
{
int i,j;
float tmp;
for(i=0;i<count-1;i++)
for( j=i+1;j<count;j++)
if(data[i]>data[j])
{
tmp=data[i];
data[i]=data[j];
data[j]=tmp;
}
if(count%2==0)
return (data[count/2-1]+data[count/2])/2;
else
return data[count/2];
}
#包括
#包括
#包括
无效读取数据(浮点[],整数计数);
浮点数据平均值(浮点[],整数计数);
浮点数据SD(浮点[],整数计数);
浮点数据最小值(浮点[],整数计数);
浮点数据最大值(浮点[],整数计数);
浮点数据中值(浮点[],整数计数);
int main()
{
浮动数据[200];
整数选择,计数=0,i;
做
{
printf(“************************************************************************************************************************\n”);
printf(“*此程序将执行以下操作:*\n”);
printf(“*1.输入数据*\n”);
printf(“*2.显示数据和以下统计信息:*\n”);
printf(“*日期项的编号,*\n中的高值和低值”);
printf(“*数据,平均值、中位数、模式、方差和标准偏差。*\n”);
printf(“*3.退出程序*\n”);
printf(“************************************************************************************************************************\n”);
printf(“\n\n您的选择:”);
scanf(“%d”,选择(&C);
printf(“在每次提示后输入一个数据项。\n”);
printf(“完成数据输入时输入-1和。\n\n”);
开关(选择)
{
案例1:
读取数据(数据、计数);
打破
案例2:
printf(“\n文件数据:\n”);
printf(“%.2f”,数据[i]);
printf(“\n\n数据项总数:%d”,计数);
printf(“\n数据中的最大值:%.2f”,dataMax(数据,计数));
printf(“\n数据中的最小值:%.2f”,dataMin(数据,计数));
printf(“\n人工:%.2f”,数据平均值(数据,计数));
printf(“\n中间值:%.2f”,数据中间值(数据,计数));
printf(“\n标准偏差:%.2f”,数据D(数据,计数));
printf(“\n变量:%.2f\n\n”,pow((数据,计数)),2));
打破
案例3:
出口(0);
}
}而(1),;
getchar();
返回0;
}
无效读取数据(浮点数据[],整数计数)
{
int值=0;
国际项目[200];
printf(“项#%d:\t”,值++);
scanf(“%f”项和项目);
而((项目)!=EOF)
{
printf(“项#%d:\t”,值++);
scanf(“%f”项和项目);
}
退货*项目;
}
浮点数据平均值(浮点*数据,整数计数)
{
int i;
浮动平均值=0.0;
对于(i=0;i数学中没有平均值(…)
float dataSd(float data[],int count)
{
float avg=mean(data,count);
float SD =0.0;
int i;
for(i=0;i<count;i++)
{
SD+= pow((data[i]-avg),2);
}
return sqrt(SD/count);
}
浮点数据D(浮点数据[],整数计数)
{
浮动平均值=平均值(数据、计数);
浮动SD=0.0;
int i;
对于(i=0;i平均值(数据,计数);
正如链接器告诉您的,它找不到mean()
函数。不存在这样的函数。闻起来像是抄袭的作业,请作者提供缺失的函数这就是你要展示给我们的所有内容吗?我相信还有更多的行。正确的做法是删除错误的答案,而不是编辑它,以窃取已经存在的正确答案,作为100%的等效副本…不是吗“看不见。不需要偷一个难以置信的基本c 101答案现在我用readData函数得到了一个无限循环。有什么帮助吗?项目#只停留在项目#1。既然你在没有人帮你读问题的情况下无法回答一个难以置信的基本c 101答案,请允许我怀疑一下…@Himinguiand1930如果你不更改vvalue
在循环内部,但将其作为未初始化变量保留,为什么您认为循环会挂起?