Estructura de almacenamiento de datos

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;
}

Supongo que te gusta

Origin blog.csdn.net/weixin_51705589/article/details/112969351
Recomendado
Clasificación