练习-输入n(0<n≤100)个互不相同的整数并存在数组中,找出最大元素,并删除。

#include<stdio.h>
#define N 100
//定义删除无序数组中最大值的函数
int Delete_Max(int array[],int n)//  n:数组长度;
{
    int j=0;
    int max=0;//max用来标记数组中的最大值
    int flag;//flag用来标记数组中最大值的下标
    while(j<n)
    {
        if(array[j]>max)
        {
            max=array[j];
            flag=j;
     }
        j++;
    }
    for(int i=flag;i<n-1;i++)
    {
        array[i]=array[i+1];//将下一个数组元素得值赋给当前的元素
    }
    //循环打印数组
    for(int i=0;i<n-1;i++)//删除一个元素之后数组的长度变为n-1
    {
        printf("%d ",array[i]);
    }
}
int main()
{
    /*********Begin*********/
    int array[N];
    int n;
    scanf("%d",&n);
    for(int i=0;i<n;i++)
    {
        scanf("%d",&array[i]);
    }
    Delete_Max(array,n);
    /*********End**********/ 
    return 0;
}
posted @ 2021-08-06 10:12  卿源  阅读(878)  评论(0)    收藏  举报