早教吧 育儿知识 作业答案 考试题库 百科 知识分享

输入N个整数,存入一个数组中。1)应用某种排序算法将这N个数有大到小的顺序排序,输出排序的结果并存入原数组中。2)输入一个新数,把它插入到排好序的数列中,是新数列仍然有序,

题目详情
输入N个整数,存入一个数组中。
1)应用某种排序算法将这N个数有大到小的顺序排序,输出排序的结果并存入原数组中。
2)输入一个新数,把它插入到排好序的数列中,是新数列仍然有序,同时输出新的数列。
要求:定义三个函数分别实现输出数列,排序算法和插入功能。
▼优质解答
答案和解析
#include "stdio.h"
#define N 10
void bubble_sort(int array[],int n)
{//冒泡法排序
int i,j,flag,temp;
for(i = 0; i < n-1; i++)
{
flag = 1;
for(j = 0; j < n-i-1; j++)
{
if(array[j] > array[j+1])
{
temp = array[j];
array[j] = array[j+1];
array[j+1] = temp;
flag = 0;
}
}
if(1 == flag)break;
}
}
void insert(int a[],int num)
{//插入数据
int i,j;
for(i=0;i {
if (num>a[i])continue;
for (j=N;j>i;j--)a[j]=a[j-1];
break;
}
a[i]=num;
}
void print(int a[],int n)
{//输出
int i;
for(i = 0; i < n; i++)printf("%d ",a[i]);
printf("\n");
}
void main()
{
int a[N+1],i,num;
printf("请输入%d个数字:",N);
for (i=0;i bubble_sort(a,N);//用冒泡法排序
printf("排序后:");
print(a,N);//输出
printf("输入要插入的数字:");
scanf("%d",&num);
insert(a,num);//插入数据
printf("插入后:");
print(a,N+1);//输出
}
看了输入N个整数,存入一个数组中。...的网友还看了以下:

海洋之中有大量的宝贵资源.被称为“海洋元素”的溴,其工业制法为把海水浓缩得盐卤,然后加热到363K  2020-05-16 …

一个容器内已注满水,有大、中、小三个球.第一次把小球沉入水中;第二次把小球取出,把中球沉入水中;第  2020-05-23 …

一个容器内已注满水,有大、中、小三个球.第一次把小球沉入水中;第二次把小球取出,把中球沉入水中;第  2020-06-04 …

一个容器内已注满水,有大、中、小三个球.第一次把小球沉入水中;第二次把小球取出,把中球沉入水中;第  2020-06-04 …

一个容器内已注满水,有大、中、小三个球.第一次把小球沉入水中;第二次把小球取出,把中球沉入水中;第  2020-06-04 …

一个容器内已注满水,有大、中、小三个球.第一次把小球沉入水中;第二次把小球取出,把中球沉入水中;第  2020-06-04 …

一个容器内已注满水,有大、中、小三个球.第一次把小球沉入水中;第二次把小球取出,把中球沉入水中;第  2020-06-06 …

为鉴别硫酸钾、氢氧化钡、盐酸、氯化钾、氢氧化钾五种无色溶液,先加入一种试剂,鉴别出一种物质,并把未  2020-06-12 …

一个容器内已注满水,有大、中、小三个球.第一次把小球沉入水中;第二次把小球取出,把中球沉入水中;第  2020-07-22 …

一个容器内已注满水,有大、中、小三个球.第一次把小球沉入水中;第二次把小球取出,把中球沉入水中;第  2020-07-29 …