Estructura de almacenamiento de datos
detalles de la misión
Esta tarea: hay tres candidatos, cada votante solo puede emitir un voto, escribir un programa, usar la estructura para almacenar los datos y encontrar el resultado de la votación.
Los tres candidatos son "Li", "Zhang" y "Sun".
Requisitos de programación
Complemente el código, use la estructura para almacenar los datos y encuentre el resultado de la votación.
introducción a la prueba
La plataforma probará el código que escriba y comparará el valor que genere con el valor real correcto. Solo cuando todos los datos se hayan calculado correctamente, la prueba podrá aprobar:
Entrada de prueba:
10
Li
Li
Sun
Zhang
Zhang
Sun
Li
Sun
Zhang
Li
Rendimiento esperado:
Li: 4
Zhang: 2
Sol: 3
Descripción de los datos de entrada de prueba:
La primera línea de datos de entrada contiene un número entero n, lo que significa que hay n personas votando. Cada línea subsiguiente contiene el nombre de un determinado candidato.
el código se muestra a continuación
#include<stdio.h>
#include<string.h>
typedef struct candidate /*定义结构体类型*/
{
char name[20]; /*存储名字*/
int count; /*存储得票数*/
}CAND; /*定义结构体数组*/
int main()
{
CAND cndt[3] = {
{
"Li",0},{
"Zhang",0},{
"Sun",0} };
int i, j,n;
scanf("%d", &n);
char leader_name[20];
for (i = 1; i <= n; i++)
{
scanf("%s", leader_name);
for (j = 0; j <= 2; j++)
{
if (strcmp(leader_name, cndt[j].name) == 0)
{
cndt[j].count++;
}
}
}
for (i = 0; i <= 2; i++)
{
printf("%s:%d\n", cndt[i].name, cndt[i].count);
}
return 0;
}