C语言基础日记1菜单实现数组的综合运用(输入,输出,最大值,最小值,平均值,查找元素,排序)

C语言日记之菜单实现数组的综合运用(输入,输出,最大值,最小值,平均值,查找元素,排序)

该篇文章关于数组的基础运用
属于初学c语言的新手教学

#include<stdio.h>
#define N 10  //默认数组长度为10 想改变数组长度改变N大小即可


void arrayscan(int array1[])//数组输入
{
    
    int i,j;
	for(i=0;i<N;i++)
	{
    
    scanf("%d",&array1[i]);
	}
}
 


void arrayput(int array1[])//数组输出
 {
    
    int i;
 for(i=0;i<N;i++)
 {
    
    printf("%d\t",array1[i]);
 }
 }
 
 
 
 int arraymax(int array1[])//最大值
	{
    
       int i,max;
	     max=array1[0];
	      for(i=0;i<N;i++)
       {
    
    
	       if(array1[i]>max)
	     {
    
    max=array1[i];}
		  }
	 
		  return max;
 }

 int arraymin(int array1[])//最小值
 {
    
    int i,min;
	     min=array1[0];
	      for(i=0;i<N;i++)
       {
    
    
	       if(array1[i]<min)
	     {
    
    min=array1[i];}
		  }
	 
		  return min;
 }
 
 double arrayaverage(int array1[])//平均值
  {
    
    double average;
	  int sum=0,i;
	  for(i=0;i<N;i++)
	  {
    
    sum+=array1[i];
	  }
	  average=sum/10.0;
	  return average;
  }
  
  
  void arraysearch(int array1[],int n)//元素查找
  {
    
    int i=0;
  while(i<N)
  {
    
    if(n==array1[i])
  break;
  i++;
  }
  if(i<N)
  {
    
    printf("找到的元素为数组的第%d位",i+1);}
  else
	  printf("没有找到");
  }

  void arraypai(int array1[])//排序采用冒泡排序法
  {
    
    
	  int i,j,temp;
	  for(i=0;i<N-1;i++)
		  for(j=N-1;j>1;j--)
		  {
    
    if (array1[j]<array1[j-1])
		  {
    
    temp=array1[j-1];
	  array1[j-1]=array1[j];
	  array1[j]=temp;
	  }
	  }
  }



  
  int main()
{
    
    

	int array1[N];
	int i,j,n,m;
	printf("请输入该数组的10个元素:");
	arrayscan(array1);
	printf("该数组的10个元素如下:\n");
	arrayput(array1);
	printf("\n\n\n");
	printf("该程序有4个功能:1对应最大值,2对应最小值,3对应平均值,4对应查找数组,5对应数组元素排序");
	
	
	while(1)//菜单的实现
	{
    
    
	printf("请输入功能编号:");
		
	    do{
    
    
		scanf("%d",&n);
		if(n<0||n>5)
		{
    
    printf("请重新输入:");
		}
		}while(n<0||n>6);
		
			
			switch(n)//switch case做选择
	{
    
    case 1:
		
	printf("该数组的最大值为:");
	printf("%d",arraymax(array1));
	printf("\n\n\n");
	break;
	  
	
	case 2:
	printf("该数组的最小值为:");
	printf("%d",arraymin(array1));
		printf("\n\n\n");
	break;
	
	case 3:
	printf("该数组的平均值值为:");
	printf("%f",arrayaverage(array1));
		printf("\n\n\n");
		break;
		
	
	case 4:
	printf("请输入要查找的值:");
	scanf("%d",&m);
	arraysearch(array1,m );
		printf("\n\n\n");
		break;


	case 5:
    printf("数组排序后的顺序为(排序之后再查找元素就是排序后数组元素的位置):");
	arraypai(array1);
	arrayput(array1);
	printf("\n");
	break;
}
}
	}

在这里插入图片描述
如上图,输入一个数组的元素,分别按下功能编号就可以进行操作,非常方便快捷。

作者shawn
202012.17
联系qq:965798711

猜你喜欢

转载自blog.csdn.net/qq_51564898/article/details/111314079