㈠ 怎樣在C語言中實現兩個數組的合並
把兩個數組分別合到一個數組裡面啊.
那個數組的長度為 兩個數組的長度的和
㈡ 請問如何使用C語言把兩個數組合並在一個數組里
代碼文本:
#include "stdio.h"
int input(int *p,int n){
char i,ch;
for(i=0;i<n;i++){
if((ch=getchar())==' ')
break;
else if(ch>='0' && ch<='9')
ungetc(ch,stdin);
scanf("%d",p+i);
}
return i;
}
int main(int argc,char *argv[]){
int a[21],b[10],i,j,k;
printf("Input array a... ");
i=input(a,10);
printf("and input array b... ");
j=input(b,10);
for(k=0;k<j;a[i++]=b[k++]);
for(j=0;j<i;printf("%d ",a[j++]));
putchar(' ');
return 0;
}
㈢ C語言合並兩個數組
不知道樓主是要普通的合並然後排序呢還是高級演算法里的歸並排序。後者的話建議看看網路http://ke..com/view/90797.htm
前者。
#include<stdio.h>
int
main()
{
int
a[100],b[100];
int
anum,bnum,i,j,k,temp;
printf("請輸入數組a的元素個數:");
scanf("%d",&anum);
for(i=0;i<anum;i++)//數組a輸入
scanf("%d",&a[i]);
printf("請輸入數組b的元素個數:");
scanf("%d",&bnum);
for(i=0;i<bnum;i++)//數組b輸入
scanf("%d",&b[i]);
k=anum+bnum;//計算數據總個數
for(i=0;i<bnum;i++)//b數組合入a數組
a[anum+i]=b[i];
for(i=0;i<k-1;i++)
//選擇排序
for(j=i+1;j<k;j++)
if(a[i]<a[j])
{temp=a[i];
a[i]=a[j];
a[j]=temp;
}
for(i=0;i<k;i++)//輸出最終數組
printf("%8d",a[i]);
return
0;
}