把一个整数按大小顺序插入已排好序的数组中。
来源:互联网 发布:mac 16g内存 虚拟机 编辑:程序博客网 时间:2024/06/06 14:12
为了把一个数按大小插入已排好序的数组中,应首先确定排序是从大到小还是从小到大进行的。设排序是从大到小进序的,则可把欲插入的数与数组中各数逐个比较,当找到第一个比插入数小的元素 i 时,该元素之前即为插入位置。然后从数组最后一个元素开始到该元素为止,逐个后移一个单元。最后把插入数赋予元素 i 即可。
#include<stdio.h>int main()
{int i,j,p,q,s,n,a[11]={127,3,6,28,54,68,87,105,162,18};for(i=0;i<10;i++){p=i;q=a[i];for(j=i+1;j<10;j++)if(q<a[j]){p=j;q=a[j];}if(p!=i){s=a[i];a[i]=a[p];a[p]=s;}printf("%d",a[i]);}printf("input number:\n");scanf("%d",&n);for(i=0;i<10;i++)if(n>a[i]){for(s=9;s>=1;s--)a[s+1]=a[s];break;}a[i]=n;for(i=0;i<=10;i++)printf("%d\n",a[i]);printf("\n");}
本程序首先对数组a中的10个数从大到小排序并输出排序结果。然后输入要插入的整数n。再用一个for 语句把 n 和数组元素逐个比较,如果发现有 n>a[i]时,则由一个内循环
把 i 以下各元素值顺次后移一个单元。后移应从后向前进行(从 a[9]开始到 a[i]为止)。 后移结束跳出外循环。插入点为i,把 n 赋予 a[i]即可。 如所有的元素均大于被插入数,则并未进行过后移工作。此时i=10,结果是把 n 赋于 a[10]。最后一个循环输出插入数后的数组各元素值。
0 0
- 把一个整数按大小顺序插入已排好序的数组中。
- 选择法排序和把一个整数插入以排好的序的数组中
- 编写一个程序 把八个整数读入一个数组中 然后以相反的顺序打印它们
- 实现一个函数,传递一个有10个已经排好序的整形元素数组(数组大小实际为11)中,将一个指定的值按顺序插入,并在main函数中将插入后的数组输出。
- 把一个整数数组,分成个大小相同的子数组
- 面试题,小程序,在一个排序完毕的数组中,按顺序插入一个数
- 插入一个整数到一个有序的数组中,并保证该数组是有序的
- 对于非负整数0,1,2,....n-1,随机放入一个大小为n的一维数组中,调整元素顺序,辅助空间为O(1)
- 编写一个程序把8个整数读入一个数组,然后以相反的顺序打印他们
- 输入一个整数数组,调整数组中数字的顺序,使得所有奇数位于偶数前面
- 怎样编写一个程序,把一个有序整数数组放到二叉树中(按行输出)
- 把一个有序整数数组放到二叉树中
- 把一个有序整数数组放到二叉树中
- 把一个有序整数数组放到二叉树中
- 把一个有序整数数组放到二叉树中
- 把一个有序整数数组放到二叉树中
- 给定一个整数,把整数中包含的每一个数字放到一个数组中(不要把数字转化为字符串处理)
- 把一个数字插入已排序的数组,插入后的数组依旧按原规则排序
- Commando War
- 第三章 Spring环境设置(Spring Framework3.1教程)
- Visual C++开发工具与调试技巧整理
- 寒假训练--树与二叉树--基本操作
- 1072. Gas Station (30)
- 把一个整数按大小顺序插入已排好序的数组中。
- MySQL---federated引擎
- Wooden Sticks
- C/C++中自动类型转换的规则
- 数据结构实验之求二叉树后序遍历和层次遍历
- nvidia developer tools
- STL之bitset
- 寒假训练--字典树--Message Flood
- A - Table