第十六周 问题 C: 相同的数字!

水深无声 2022-08-06 01:23 189阅读 0赞
  1. 问题及代码:
  2. /*
  3. 02.*Copyright (c) 2014,烟台大学计算机学院
  4. 03.*ALL right reserved
  5. 04.*文件名:相同的数字!
  6. 05.*作者;童宇
  7. 06.*完成日期:2014年12月5日
  8. 07.*版本号v1.0
  9. 08.*问题描述:输出两个有序数列(不超过50个)中有多少相同数据,并输出这些数据。
  10. 09.*输入描述:第一行输入这两组数的个数(不超过50个)。后面两行分别输入这两组数。同一序列中的数字不会重复。
  11. 10.*程序输出:第一行输出相同数字的个数,第二行输出这些相同的数字。若没有相同的数字,输出NULL
  12. 11.*/
  13. #include <iostream>
  14. using namespace std;
  15. int sameNum(int *a,int n1,int *b,int n2, int *c);
  16. int main()
  17. {
  18. int a[50];
  19. int b[50];
  20. int c[50];
  21. int i,n1, n2, n3;
  22. cin>>n1>>n2;
  23. for(i=0; i<n1; i++)
  24. {
  25. cin>>a[i];
  26. }
  27. for(i=0; i<n2; i++)
  28. {
  29. cin>>b[i];
  30. }
  31. n3 = sameNum(a,n1,b,n2,c);
  32. if(n3==0)
  33. cout<<"NULL\n";
  34. else
  35. {
  36. cout<<n3<<endl;
  37. for(i=0; i<n3; i++)
  38. cout<<c[i]<<" ";
  39. cout<<endl;
  40. }
  41. return 0;
  42. }
  43. int sameNum(int *a,int n1,int *b,int n2, int *c)
  44. {
  45. int i,j,k=0;
  46. for(i=0; i<n1; i++)
  47. {
  48. for(j=0; j<n2; j++)
  49. {
  50. if(a[i]==b[j])
  51. {
  52. c[k]=a[i];
  53. k++;
  54. }
  55. }
  56. }
  57. return k;
  58. }

运行结果:
Center

发表评论

表情:
评论列表 (有 0 条评论,189人围观)

还没有评论,来说两句吧...

相关阅读