C语言题目:有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。

来源:互联网 发布:兰特报价软件 编辑:程序博客网 时间:2024/06/04 20:02

写的不好,您多担待。

#include<stdio.h>void btos(int a[], int n)//从大到小的顺序{    int i, j;     for (i=9; i>=0; i--)    {        if (n <= a[i])        {            for (j=9; j>=i+1; j--)            a[j+1] = a[j];            a[i+1] = n;            return;        }    }            for (j=9; j>=0; j--)            a[j+1] = a[j];            a[0] = n;            return;}void stob(int a[], int n)//从小到大的顺序{    int i, j;     for (i=9; i>=0; i--)    {        if (n >= a[i])        {            for (j=9; j>=i+1; j--)            a[j+1] = a[j];            a[i+1] = n;            return;        }    }            for (j=9; j>=0; j--)            a[j+1] = a[j];            a[0] = n;            return;}int main(int argc, char *argv[]){    int a[11] = {0};    int i, num;    printf("请输入一个排好顺序的10个数字\n");    for (i=0; i<10; i++)    scanf("%d", &a[i]);    for (i=0; i<10; i++)    printf("%d ", a[i]);    printf("\n");    printf("输入一个数,按原来的规律插入数组中\n");    scanf("%d", &num);    if (a[0] >= a[9])    btos(a, num);    else    stob(a, num);    for (i=0; i<11; i++)    printf("%d ", a[i]);    printf("\n");}
阅读全文
0 0
原创粉丝点击