我是靠谱客的博主 坚强小丸子,最近开发中收集的这篇文章主要介绍C语言之数据插入,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

编写程序,从键盘输入8个非递减有序排好的数列并放入一个一维数组中,再输入一个数elem,并将这个数elem插入到数组中,而且仍然保持非递减有序,若插入的数比原有所有的数都大时放在最后,比原有的数都小时放在最前面。

编程要求:
1、数列中数据都是整数;
2、非递减有序:就是从小到大或者允许中间有相等的情形,比如1 3 4 5 5 6就是非递减有序排列;
3、请利用数组的方法实现;
4、请严格按照输出效果输出;(影响成绩评定)
5、任务提交代码时需保证其符合行业代码规范,需进行必要的缩进及换行。(影响成绩评定)

运行效果1:
请按照非递减有序输入8个整数:
2 3 3 10 15 16 28 30
请输入elem:3
插入elem后的结果为:
2 3 3 3 10 15 16 28 30
请按任意键继续. . .

运行效果2:
请按照非递减有序输入8个整数:
3 4 10 15 16 66 78 80
请输入elem:81
插入elem后的结果为:
3 4 10 15 16 66 78 80 81
请按任意键继续. . .

运行效果3:
请按照非递减有序输入8个整数:
11 22 33 45 56 57 77 89
请输入elem:3
插入elem后的结果为:
3 11 22 33 45 56 57 77 89
请按任意键继续. . .

#include <stdio.h>

int main(void)
{ 
    int n ,arr[9] ,i ,elem ,j;
    printf("请按照非递减有序输入8个整数:n");
    for (i = 0; i < 8; i++)
        scanf("%d" ,&arr[i]);
    printf("请输入elem:");
    scanf("%d" ,&elem);
    for (i = 0; i < 8; i++)
        if(arr[i] > elem)
            break;
    for (j = 7; j >= i; j--)
        arr[j+1] = arr[j];
    arr[i] = elem;

    printf("插入elem后的结果为:n");
    for (i = 0; i <= 8; i++)
        printf("%d " ,arr[i]);
    printf("n");

    return 0;
}
#include <stdio.h>

int main(void)
{
    int arr[9],elem;
    int a,b,j;
    printf("请按照非递减有序输入8个整数:n");
    for(a=0;a<8;++a)
    {
        scanf("%d",&arr[a]);
    }
    printf("请输入elem:");
    scanf("%d",&elem);
    printf("插入elem后的结果为:n");
    arr[8]=elem;
    for(a=0;a<8;++a){
        for(j=0;j<8-a;++j){
            if(arr[j]>arr[j+1]){
                b=arr[j];
                arr[j]=arr[j+1];
                arr[j+1]=b;
            }
        }
    }
    for(a=0;a<9;++a){
        printf("%d ",arr[a]);
    }
    printf("n");
    return 0;
}

最后

以上就是坚强小丸子为你收集整理的C语言之数据插入的全部内容,希望文章能够帮你解决C语言之数据插入所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部