C Program to Specifies a larger array ( in case one larger than the other )

How to write a C Program to Specifies a larger array ( in case one larger than the other ) in C Programming Language ?


Solution:



#include "stdafx.h"
#include "stdio.h"
#include "conio.h"
#include "stdlib.h"
#include "cmath"
#include "locale.h"
#include "time.h"

#define size_of_arr 30

void main()
{
 setlocale(LC_ALL, "RUS");
 int a[size_of_arr];
 int b[size_of_arr];
 int c[size_of_arr];
 int maxcounter = 0;
 int n,m;
 int i;
 int j;
 int strnum;
 int count = 0;
 printf("введи кол-во n элементов массива а\n");
 scanf("%d", &n);
 printf("введи кол-во элементов массива b\n");
 scanf("%d", &m);
  //Ввод массива а
 printf("введи элементы массива a\n");
 for (i = 0; i < n; i++)
 {
  scanf("%d", &a[i]);
 }
  //Ввод массива b
 printf("введи элементы массива b\n");
 for (i = 0; i < m; i++)
 {
  scanf("%d", &b[i]);
 }
  //Уточняем, какой массив больше (на случай, если один больше другого)
 if (m < n)
 {
  n = m;
 }
  //main cycle
 for (i = 0; i < n; i++)
 {
  if (maxcounter < count)
  {
   maxcounter = count;
   strnum = i - 1;
  }
  for (j = 0; j < n; j++)
  {
   if (a[i] == b[j])
   {
    count = count++;
   }
  }
 }

  //Вывод результатов
 if (maxcounter>0) {
  printf("Самая длинная совпадающая последовательность\n");
  for (i = strnum; i < strnum+maxcounter; i++)
  {
   printf("%d ", c[i]);
  }
 }
 else
 {
  printf("Совпадающих элементов нет");
 }
 getch();
}


Learn More :