C语言——实例039 有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中
来源:互联网 发布:知豆电动汽车多少钱 编辑:程序博客网 时间:2024/06/06 06:41
第一个程序:有bug,但没发现
/*Name: Copyright: Author: Date: 31/07/17 11:42Description: 【程序39】题目:有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。1. 程序分析:首先判断此数是否大于最后一个数,然后再考虑插入中间的数的情况,插入后此元素之后的数,依次后移一个位置。 ?*/#include <stdio.h>int main(){int a[100],temp,i,j,n,min;int x,temp2;/*输入待排序数据*/printf("请输入待排序的数的个数:");scanf("%d",&n);printf("\n请输入%d个数:",n);for(i = 0;i < n;i++){scanf("%d",&a[i]);}printf("\n");/*排序*/ for(i = 0;i < n - 1;i++){min = i;for(j = i + 1;j < n;j++){if(a[min] > a[j]) {min = j;}}temp = a[i];a[i] = a[min];a[min] = temp;}/*输出排序*/ printf("从小到大排序后的%d个数为:\n",n);for(i = 0;i < n;i++){printf("%-5d",a[i]);}printf("\n\n");/*插入*/while(printf("请输入插入数据:") && scanf("%d",&x) != EOF) {printf("\n");n++;if(x >= a[n - 2]){a[n - 1] = x;printf("从小到大排序后的%d个数为:\n",n);for(i = 0;i < n;i++){printf("%-5d",a[i]);}printf("\n\n");}else{for(i = 0;i < n - 2;i++){if(x < a[i]){temp = a[i];a[i] = x;for(j = i + 1;j < n;j++){temp2 = a[j];a[j] = temp;temp = temp2;}break;}}printf("从小到大排序后的%d个数为:\n",n);for(i = 0;i < n;i++){printf("%-5d",a[i]);}printf("\n\n");} }return 0;}
运行结果:
第二个程序:没有仔细测试
/*Name: Copyright: Author: Date: 31/07/17 11:42Description: 【程序39】题目:有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。1. 程序分析:首先判断此数是否大于最后一个数,然后再考虑插入中间的数的情况,插入后此元素之后的数,依次后移一个位置。 ?*/#include <stdio.h>#include<stdlib.h>int cmp(const void *a,const void *b){return (*(int *)a-(*(int *)b));//从小到大 }int main(){int a[100],temp,i,j,n,min;int x,temp2;/*输入待排序数据*/printf("请输入待排序的数的个数:");scanf("%d",&n);printf("\n请输入%d个数:",n);for(i = 0;i < n;i++){scanf("%d",&a[i]);}printf("\n");/*排序*/ qsort(a,n,sizeof(int),cmp);/*输出排序*/ printf("从小到大排序后的%d个数为:\n",n);for(i = 0;i < n;i++){printf("%-5d",a[i]);}printf("\n\n");/*插入*/printf("请输入插入数据:");scanf("%d",&x);a[n] = x;qsort(a,n + 1,sizeof(int),cmp);printf("\n从小到大排序后的%d个数为:\n",n + 1);for(i = 0;i < n + 1;i++){printf("%-5d",a[i]);}printf("\n\n");return 0;}
阅读全文
0 0
- C语言——实例039 有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中
- C语言题目:有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
- 有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
- 有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中
- 有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中
- 有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
- 有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
- 有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
- 有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
- 有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
- Java-有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
- 有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
- 有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
- 已有一个已经排好序的数组,输入一个数,要求按照原来排序的规律将它插入数组中
- 有一个已经排序号的数组。现在输入一个数,要求按原来的规律将它插入数组中。
- 有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。没事写写程序,增加点点数。
- 【程序30】 ArraySort.java 题目:有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
- Java面试题多思路解析--有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中
- UDP协议及其与TCP的区别
- 堆排序
- FileUtil文件工具简单应用
- 杭电oj1095 加法多两个换行
- Linux添加/删除用户和用户组
- C语言——实例039 有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中
- 安装 pyspider ConfigurationError: Could not run curl-config: [Errno 2] No such file or directory
- HTML标签
- div中的文字上下左右居中的方法
- salesforce获取RecordTypeId的两种方法
- 51nod 1119 机器人走方格 V2 费马小定理求组合数
- Unreal Engine4 初学第一天
- 中国剩余定理 Biorhythms HDU
- 传值调用、传址调用