C语言插入数据生成有序序列
已有一个已排好的数组今输入一个数要求按原来排序的规律将它插入数组中。
main()
{ static int a[10]={1,7,8,17,23,24,59,62,101};int i,j,t;
scanf("%d",&a[9]);
for(i=9;i>0;i--)
if(a[i]<a[i-1])
{t=a[i-1];a[i-1]=a[i];a[i]=t;}
for(i=0;i<10;i++)
printf("%5d",a[i]);printf("
");
}
或
main()
{
static int a[5]={1,4,5,6,7};
int i,t,b;
scanf("%d",&b);
for(i=0;i<5;i++)
{if(b<=a[i])
{t=a[i];a[i]=b;b=t;}
printf("%d ",a[i]);}
printf("%d",b);
}
#includeint main(){int k,i,j,a[6]={1,3,5,7,9}; scanf("%d",&k); for(i=1;ik;j--)a[j]=a[j-1]; a[j]=k; for(i=0;i<6;i++) printf("%4d",a[i]); printf("
"); return 0; }
void output(int a[],int n);
main()
{
int n,i,j,x,pos;
int c=0; //c表示有效的数据个数
int a[20];
scanf("%d",&n);
for(i=0;i<n;i++) //插入n个数据
{
scanf("%d",&x);
//查找插入的位置pos,并且向后移动数据
pos=0;
for(j=c-1;j>=0;j--)
{
if(x>a[j])
{
pos=j+1;
break;
}
else
{
a[j+1]=a[j];
}
}
a[pos]=x; //在pos位置插入数据
c++; //个数加1
}
output(a,c);
printf("\n");
system("PAUSE");
return 0;
}
void output(int a[],int n)
{
int i;
for(i=0;i<n;i++)
{
printf("%d ",a[i]);
}
}
C语言插入数据生成有序序列
} a[pos]=x; \/\/在pos位置插入数据 c++; \/\/个数加1 } output(a,c);printf("\\n");system("PAUSE");return 0;} void output(int a[],int n){ int i;for(i=0;i<n;i++){ printf("%d ",a[i]);} }
一维数组的有序插入,用C语言写。
将插入位置后的元素后移一位;在插入位置处插入x;返回插入后数组的长度n+1。在主函数中,我们先输入有序数列的长度n和n个有序整数,然后输入要插入的整数x。接着调用insertX函数将x插入到数组中,并输出插入后的有序整数序列。需要注意的是,上述代码并没有对输入的数据进行范围检查,如果输入的数据...
C语言编程:有一个已排好序的数组,现输入一个数插入到数组中,要求插入该...
int a[100],n=10,i,j,x;\/*输入10个数*\/ for (i=0;i<n;i++) scanf("%d", &a[i]);\/*输入1个数*\/ scanf("%d",&x);\/*找到需要插入的位置j*\/ for (i=0;i<n;i++) if (a[i]<x) j=i+1;\/*把j之后的数据后移*\/ for (i=n;i>j;i--) a[i]=a[i-1];\/*插...
C语言 实现将一个数据插入至升序排列的数组中
void insert(int n,int a[],int size){ int i; for(i=size;i>0 && a[i]>n;i--) { a[i+1] = n; } a[i+1] = n;}插入排序嘛
c语言编程:将一个任意整数插入到已排列的整型数组中,插入后,数组中的数...
void arr(int *a,int n);\/*定义排序函数*\/ void insert(int *a,int num);\/*插入并排序函数*\/ int n=10;\/*定义数据个数,可修改*\/ void main(){ int *a,num,j,k,b[10]={2,5,14,26,34,56,58,79,83,98};a=&b[0];\/*初始化*\/ printf("排序好的数据为:\\n");for (j...
C语言输入10个数排序?
2、此处用到快速排序思想,通过一趟排序将要排序的数据分割成独立的两部分,即这里用i和j两个变量分割数据,然后一部分的所有数据都比另外一部分的所有数据都要小,接着对这两部分数据分别进行比较排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列:3、接着编写主函数,主函数中定义一个数组...
wps两行数字怎么顺序排列
对话框中,用户可以选择序列的类型、步长、终止值等参数,以生成符合需求的序列。这一功能对于数据录入和分析非常有用,能够大大提高工作效率。无论是WPS文字还是WPS表格,都提供了便捷的工具来帮助用户快速生成有序列表和序列填充。通过合理利用这些功能,用户可以更高效地完成文档编辑和数据处理工作。
插入法C语言
在有序序列中寻找插入位置时,可以从有序序列的最后一个数往前找,同时向后移动元素以准备插入空间。这种算法通常用于对小规模数据进行排序,或在部分已排序的数据基础上进行调整。下面是一个用插入排序法对10个整数进行降序排序的示例源代码:c#include main() {int a[10], i, j, t;printf("Please...
C语言 数组。在有序的数列中插入若干个数,使数列在插曲过程中始终保持...
a1~a49是有序的 int c;\/\/这个是插入的数据 int i,n;n=50;\/\/这个是有序数据的个数 for(i=n-1;i>=0;i--){ if(c>a[i]){a[i+1]=c;break;} \/\/插入就跳出循环 else a[i+1]=a[i];\/\/要是小于,数据就后移一位,腾出一个空间 } 要是多个数据,就在加一个循环 ...
...并对得到的二叉排序述进行中序遍历,得到有序序列。
void inorder(BiTNode *BT){\/\/中序遍历二叉树 if(BT!=NULL){ inorder(BT->lchild );printf("%c ",BT->data);inorder(BT->rchild );} } void DeleteBtree(BiTNode *BT){\/\/删除二叉树的所有的节点 if(BT!=NULL){ DeleteBtree(BT->lchild );DeleteBtree(BT->rchild );free(BT);} }...