对一个无序数组int a[N]进行降序排列,输出排列后数组,并求出该数组最大值与最小值;在此基础上向该排列后数组插入一个正整数x,要求插入后的数组仍然是有序的
用c语言怎么做
对一个无序数组int a[N]进行降序排列,输出排列后数组,并求出该数组最大值与最小值;在此基础上向该排列后数组插入一个正整数x,要求插入后的数组仍然是有序的
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
CSDN专家-赖老师(软件之家) 2021-11-13 14:48关注#include "stdio.h" #include<stdlib.h> //冒泡排序 void choose(int a[],int n){ int i,j,temp; for(i=1;i<n;i++) { for(j=n-1;j>=i;j--) { if(a[j]>a[j-1]){ temp=a[j]; a[j]=a[j-1]; a[j-1]=temp; } } } } //输出 void output(int a[],int n){ int i; for(i=0;i<n;i++) printf("%d\t",a[i]); } void main() { int a[1000]; int n; int i,j; int num; printf("请输入N:"); scanf("%d",&n); for(i=0;i<n;i++){ scanf("%d",&a[i]); } //冒泡排序 choose(a,n); //输出 output(a,n); printf("\n最大值=%d,最小值%d\n",a[0],a[n-1]); printf("请输入一个值:"); scanf("%d",&num); for(i=0;i<n;i++){ if(num>a[i]){ for(j=n;j>=i;j--){ a[j]=a[j-1]; } a[i] = num; break; } } output(a,n+1); }本回答被题主选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报 编辑记录解决 1无用