#include <stdio.h>
void f(int a[], int na, int b[], int nb);
int main()
{
int Na, Nb, a[25], b[25],i;
scanf("%d", &Na);
for (i = 0; i < Na; i++)
{
scanf("%d", &a[i]);
}
scanf("%d", &Nb);
for (i = 0; i < Nb; i++)
{
scanf("%d", &b[i]);
}//输入两行数
f(a, Na, b, Nb);
f(b, Nb, a, Na);
return 0;
}
void f(int a[], int na, int b[], int nb)
{
int i, j, l, m = 0, flag = 0, c[25], d[25], k = 0;
for (i = 0; i < na; i++)
{
flag = 0;
for (j = 0; j < nb; j++)
{
if (a[i] == b[j])
{
flag = 1;
break;
}
}
if (flag == 0)
{
c[k] = a[i];
k++;
}
}
printf("%d", c[0]);
for (i = 0; i < k; i++)
{
for (j = 1; j < k;j++)
{
if (c[i] == c[j])
{
d[m] = c[j];
m++;
j++;
}
}
}
for (i = 0; i < k; i++)
{
printf(" %d", d[i]);
}
printf(" ");
}
求整数序列中出现次数最多的数
#include <stdio.h>
int main()
{
int N, a[10000], i, j, k = 0, b[10000], c[1000] = { 0 }, max;
scanf("%d", &N);
for (i = 0; i < N; i++)
{
scanf("%d", &a[i]);
}
for (i = 0; i < N; i++)
{
for (j = 0; j < N; j++)
{
if (a[i] == a[j])
{
b[k] = a[i];
c[k]++;
}
}
k++;
}
max = 0;
for (i = 1; i < k; i++)
{
if (c[i] > c[max])
max = i;
}
printf("%d %d", b[max], c[max]);
return 0;
}