Colección de citas famosas - Slogan de motivación - Programación en lenguaje C, para cualquier conjunto de números, como {3,1,4,7,2,1,1,2,2}, genera el número con más apariciones y muestra el número de apariciones.

Programación en lenguaje C, para cualquier conjunto de números, como {3,1,4,7,2,1,1,2,2}, genera el número con más apariciones y muestra el número de apariciones.

Si es un número de cualquier tamaño, es un poco problemático. Puede establecer dos valores predeterminados para representar el número más grande y el mayor número de veces. Luego sondee y cuente. Si el número es mayor que el valor predeterminado, simplemente reemplácelo. Una vez que se completa el recorrido, se pueden generar esos dos valores.

Si es del 0 al 9, o letras, es relativamente simple. Puede definir una matriz de longitud fija. El subíndice de la matriz representa el valor específico. El contenido de la matriz representa el número de veces que aparece el valor. Recorre una matriz de longitud fija y obtiene el valor.

El código para el primer método es el siguiente y usted mismo puede descubrir el segundo método.

#include?

#include?

int?main(int?argc,?char?const?*argv[])

{

int?num?=?0;//El valor utilizado para almacenar el valor máximo, el valor predeterminado es 0

int?coumt?=?0 ;? //El número utilizado para almacenar el valor máximo, el valor predeterminado es 0

int?temp?=?0;//Variable intermedia

int?n?=?0 ;?/ /Número de matrices

int?*p?=?NULL;?//La primera dirección del espacio asignado, equivalente a &a[0]

printf(" Por favor, introduzca ?el?número?de?matrices:");

while(1)

{

scanf("%d",?&n );

if(n?<=?0)

printf("¿Error?es?scanf,por favor?intentar?nuevamente\n");

else

romper;?

}

p?=?(int?*)malloc(sizeof(int)?*?n);

if(p?==?NULL)

{

printf("Error?is?malloc\n");

return ?-1 ;

}

para?(int?i?=?0;?i?

{

printf("¿Por favor?enter?the?num?for?buf[%d]=",?i+1);

scanf("%d",?&p [i] );

}

for?(int?i?=?0;?i?

{

temp?=?0;

para?(int?j?=?i;?j?

{

si?(p[i]?==?p[j])

{

temp++;// contar

}

}

if(coumt?

{

cuenta?=?temp;

num?=?p[i];

}

}

printf ("¿El?número?más?común?es?%d?y?la?cuenta?es?%d\n",?num,?cuenta);

return?0;

}#include?

#include?

int?main(int?argc ,?char?const?*argv [])

{

int?coumt?=?0;?//El número utilizado para almacenar el valor máximo, el valor predeterminado es 0

int? temp?=?0;//Variable intermedia, utilizada para contar

int?n?=?0;?//El número de matrices

int?*p?=? NULL;?//La primera dirección del espacio asignado, equivalente a &a[0]

int?*num?=?NULL;?//La primera dirección del espacio asignado, equivalente a &a[0]

int?flag?=?0;//Defina un bit de bandera para contar el número de apariciones numéricas repetidas

printf(" ¿Por favor? ingrese?

número?de?matrices:");

mientras(1)

{

scanf("%d",?&n);

if?(n?<=?0)

printf("¿Error?es?scanf,por favor?intenta?nuevamente\n");

else

break;?

}

p?=?(int?*)malloc(sizeof(int)?*?n);//Almacena la matriz que deseas

if?(p?==?NULL)

{

printf("¿Error?is?malloc?for?p\n");

return?-1;

}

num?=?(int?*)malloc(sizeof(int)?*?n);//Almacenamiento Matriz de valores numéricos máximos, peor de los casos, sin números duplicados

if?(num?==?NULL)

{

printf("Error?is ?malloc?for?num\n");

return?-1;

}

for?(int?i?=?0;? i?

{

printf("¿Por favor?ingrese?el?num?for?buf[%d]=",?i+ 1 );

scanf("%d",?&p[i]);

}

for?(int?i?=?0; ? i?

{

temp?=?0;

para?(int?j?=?i;?j?

{

si?(p[i]?= = ?p[j])

{

temp++;//count

}

}

si ?(coumt?

coumt?=?temp;

}

for?(int ?i?=?0;?i?

{

temp?= ?0;

para?(int?j?=?i;?j?

{

si? (p[i]?==?p[j])

{

temp++;//Contar

}

}

if?(coumt?==?temp)//Si el número de veces es igual al valor máximo, almacenar

{

num[bandera]?=?p[ i];

bandera++;

}

}

para?(int? i?=?0;?i?< ?flag;?++i)

printf("¿El?número?más?común?es?%d?y?la?cuenta?es?% d\n",?num[i] ,?coumt);

gratis(p);

gratis(num);

retorno?0;

}