zoukankan      html  css  js  c++  java
  • C语言关于处理数组元素的插入、删除、排序

    #include <stdio.h>
    #include <stdlib.h>
    #define N 5
    
    int main()
    {
        int nums[]={29913,28971,29312,28134,28966};
        int deleteNums;//要删除的数字
        int deleteIndex=-1;//要删除的数字下标,要赋一个在代码中不可能的值
        int insertNums;
        int i,j,temp,count=5;
        for(i=0;i<count-1;i++)//外层循环
        {
            for(j=0;j<count-1-i;j++)//内层循环
                {
                    if(nums[j]<nums[j+1])
                    {
                        temp=nums[j];
                        nums[j]=nums[j+1];
                        nums[j+1]=temp;
                    }
                }
        }
        printf("从大到小的排序是:");
        for(i=0;i<count;i++)
        {
            printf("%d\t",nums[i]);
        }
        printf("\n请输入要删除的数字:");
        scanf("%d",&deleteNums);//输入要删除的数字
        for(i=0;i<count;i++)//寻找要删除的数字
        {
            if(nums[i]==deleteNums)
            {
                deleteIndex=i;
                break;
            }
    
        }
        if(deleteIndex==-1)//没有找到输入的数字
        {
            printf("没有找到输入的数字\n");
        }
        else//找到了输入的数字
        {
            for(i=deleteIndex;i<count-1;i++)
            {
                nums[i]=nums[i+1];
            }
            count--;
        }
        printf("删除后的数组为:");
        for(i=0;i<count;i++)
        {
            printf("%d\t",nums[i]);
        }
        printf("\n请输入要加入的数字");
        scanf("%d",&insertNums);
        nums[count]=insertNums;
        count++;
        printf("插入后的数组为:");
        for(i=0;i<count;i++)
        {
            printf("%d\t",nums[i]);
        }
        for(i=0;i<count-1;i++)
        {
            for(j=0;j<count-1-i;j++)
            {
                if(nums[j]>nums[j+1])
                {
                    temp=nums[j];
                    nums[j]=nums[j+1];
                    nums[j+1]=temp;
                }
            }
        }
        printf("\n从小到大的顺序是:");
        for(i=0;i<count;i++)
        {
            printf("%d\t",nums[i]);
        }
    
        return 0;
    }
  • 相关阅读:
    java+opencv实现图像灰度化
    java实现高斯平滑
    hdu 3415 单调队列
    POJ 3368 Frequent values 线段树区间合并
    UVA 11795 Mega Man's Mission 状态DP
    UVA 11552 Fewest Flops DP
    UVA 10534 Wavio Sequence DP LIS
    UVA 1424 uvalive 4256 Salesmen 简单DP
    UVA 1099 uvalive 4794 Sharing Chocolate 状态DP
    UVA 1169uvalive 3983 Robotruck 单调队列优化DP
  • 原文地址:https://www.cnblogs.com/hw1988/p/10545393.html
Copyright © 2011-2022 走看看