fork download
  1. #include <stdio.h>
  2. #define Maxsize 20
  3. typedef struct Sqlist{
  4. int date[Maxsize];
  5. int length;
  6. }Sqlist;
  7. Sqlist fun(Sqlist &l1,Sqlist &l2){
  8. Sqlist l3;
  9. int i=0,j=0,k=0;
  10. while(i<l1.length && j<l2.length){
  11. if(l1.date[i]>l2.date[j]){
  12. l3.date[k]=l2.date[j];
  13. k++,j++;
  14. }else{
  15. l3.date[k]=l1.date[i];
  16. k++,i++;
  17. }
  18. }
  19. //存在有一个数组结束时,另一个数组没结束,
  20. while(i<l1.length){
  21. l3.date[k]=l1.date[i];
  22. k++,i++;
  23. }
  24. while(j<l2.length){
  25. l3.date[k]=l2.date[j];
  26. k++,j++;
  27. }
  28. l3.length=k;
  29. return l3;
  30. }
  31. int main() {
  32. Sqlist l1,l2;
  33. l1.length=4;
  34. l1.date[0]=1;
  35. l1.date[1]=3;
  36. l1.date[2]=5;
  37. l1.date[3]=7;
  38. for(int i=0;i<l1.length;i++){
  39. printf("l1: %d",l1.date[i]);
  40. }
  41. printf("\n");
  42. l2.length=5;
  43. l2.date[0]=2;
  44. l2.date[1]=4;
  45. l2.date[2]=6;
  46. l2.date[3]=8;
  47. l2.date[4]=10;
  48. for(int i=0;i<l2.length;i++){
  49. printf("l2: %d ",l2.date[i]);
  50. }
  51. Sqlist l=fun(l1,l2);
  52. printf("\n");
  53. printf("%d",l.length);
  54. for(int i=0;i<l.length;i++){
  55. printf("l3: %d",l.date[i]);
  56. }
  57.  
  58. // fun(l1,,l2,2,5);
  59.  
  60. }
Success #stdin #stdout 0.01s 5280KB
stdin
Standard input is empty
stdout
l1:  1l1:  3l1:  5l1:  7
l2: 2 l2: 4 l2: 6 l2: 8 l2: 10 
9l3: 1l3: 2l3: 3l3: 4l3: 5l3: 6l3: 7l3: 8l3: 10