c语言编程:输入两个无序数组,分别对其排序,在合并成一个有序数组,怎么编?求教育

2022-08-02 社会 104阅读

题目没有具体要求怎么做,所以用下面思想实现较简单:写一个排序函数,调用函数对两个无序数组排序(题目有要求,否则可以不排序),然后将其中一个数组连接到另一个数组之后存入第三个数组,最后调用函数对第三个数组排序。代码如下:

#include "stdio.h"
void mysort(int *p,int n){
int i,j,k;
for(i=0;i for(k=i,j=k+1;j if(p[k]>p[j])
k=j;
if(k-i)
j=p[k],p[k]=p[i],p[i]=j;
}
}
int myinput(int *p){
int i;
for(i=0;i<50;i++)
if(scanf("%d",p+i)!=1){
fflush(stdin);
break;
}
return i;
}
int main(int argv,char *argc[]){
int a[50],b[50],c[100],i,j,k;
printf("Input some integers(Letter end)...\n");
mysort(a,j=myinput(a));
mysort(b,k=myinput(b));
for(i=0;i for(j=0;j mysort(c,i);
for(k=0;k return 0;
}

运行样例:

声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com