é便åäºä¸ï¼vc6.0è½æ£å¸¸ç¼è¯çï¼é件ä¸æå
äºè¿ä¸ªè½¯ä»¶ã代ç å¦ä¸ï¼
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
//è¾å
¥ä¸¤ä¸ªæ°åç大å°
int a_size = 0, b_size = 0;
printf("input A arrrary size:");
scanf("%d", &a_size);
printf("input B arrary size:");
scanf("%d", &b_size);
//å¨æåé
两个æ°åçå
å
int *pa = (int *)malloc(sizeof(int) * a_size);
int *pb = (int *)malloc(sizeof(int) * b_size);
int *pc = (int *)malloc(sizeof(int) * (a_size + b_size));
if (pa==0 || pb == 0 || pc==0) {
printf("can't malloc mem\n");
return 0;
}
memset(pa, 0x00, sizeof(int) * a_size);
memset(pb, 0x00, sizeof(int) * b_size);
memset(pc, 0x00, sizeof(int) * (a_size + b_size));
//è¾å
¥æ°åå
容
int inx = 0;
for (inx=0; inx!=a_size; ++inx) {
scanf("%d", &pa[inx]);
}
for (inx=0; inx!=b_size; ++inx) {
scanf("%d", &pb[inx]);
}
//å并两个æ°å
memcpy(pc, pa, sizeof(int) * a_size);
memcpy(pc+a_size, pb, sizeof(int) * b_size);
//å泡æåº
int i, j, limit = a_size + b_size;
for (i=0; i!=limit; ++i) {
for (j=i+1; j!=limit; ++j)
{
if (pc[i] < pc[j])
pc[i] ^= pc[j], pc[j] ^= pc[i], pc[i] ^= pc[j];
}
}
//è¾åºç»æ
for (inx=0; inx!=limit; ++inx) printf("%d\t", pc[inx]);
printf("\n");
//éæ¾å
å
free(pa);
free(pb);
free(pc);
return 0;
}
æ§è¡ææå¦ä¸å¾ï¼