【提问】求程序代码
刚刚学习C语言,最近想写一个C语言代码,以实现:输入任意个整数,让程序实现1、输出已经输入的整数的个数
2、求出所输入整数的平均值
3、求出这些整数中的最值
整个程序以菜单的方式展现,由于水平有限,希望前辈能够尽量多写注释,感激不敬!
程序代码:#include<stdio.h>
#include<stdlib.h>
int seek_max(int p[],int n)//求最大值,并返回
{
int max;
max=p[0];
for(int i=1;i<n;i++)
if(p[i]>max)
max=p[i];
return max;
}
int seek_min(int p[],int n)//求最小值,并返回
{
int min;
min=p[0];
for(int i=1;i<n;i++)
if(p[i]<min)
min=p[i];
return min;
}
float average(int p[],int n)//求平均值,并返回
{
float sum=0;
for(int i=0;i<n;i++)
{
sum=sum+p[i];
}
return sum/n;
}
int main(int argc, char* argv[])
{
int i=0,m;
int *p;
int n=10;
p=(int*)calloc(n,sizeof(int));
printf("请输入整数(输入0则结束输入):\n");
for(int j=0;;)
{
scanf("%d",&m);
if(0==m)
break;
else
{
p[j++]=m;
i++;
}
if(i==10)
{
p=(int *)realloc(p,(n+10)*sizeof(int));
i=0;
}
}
char c;
while(1)
{
printf("****************************\n");
printf("1.输出已经输入的整数的个数\n2.求出所有输入的整数的平均值\n3.求出这些整数中的最值\n4.退出\n");
printf("****************************\n");
printf("请输入相应的数字:");
getchar();
scanf("%c",&c);
switch(c)
{
case '1':printf("你一共输入了%d个整数。\n",j);break;
case '2':printf("你输入的所有数的平均值是%f\n",average(p,j));break;
case '3':printf("你输入的最大值是%d ,最小值是%d\n",seek_max(p,j),seek_min(p,j));break;
case '4':return 1;
default:printf("输入无效!\n");
}
}
return 0;
}
