要是候选人票数一样呢
程序代码:
	
	
			
程序代码:#include<stdio.h>
#include"stdlib.h"
#include"assert.h"
#include"string.h"
typedef struct _PERSON
{
    char *name;
    int count;
}PERSON;
int main()
{
    printf("请输入有几位候选人:");
    int n;
    scanf("%d", &n);
    PERSON *p = (PERSON *)malloc(sizeof(PERSON)*n);
    assert(p != NULL);
    for (int j = 0; j < n; j++)
    {
        char *s = (char *)malloc(sizeof(char) * 30);
        assert(s != NULL);
        p[j].name = s;
        printf("请输入有第%d候选人名字:", j + 1);
        scanf("%s", s);
        p[j].count=0;                     //count赋初始值 
    }
    char input[20];
    printf("请输入有几个选举人:");
    int m;
    scanf("%d", &m);
    fflush(stdin);                      //清楚之前的数据 
    for (int i = 0; i < m; i++)
    {
        printf("第%d投票人:",i+1);
        gets(input);
        for (int k = 0; k < n; k++)
        {
            if (strcmp(p[k].name, input) == 0)
            {
                p[k].count++;
                break;
            }
        }
    }
    PERSON max=p[0];
    for (int a = 0; a < n - 1; a++)
    {
        if (p[a].count > p[a + 1].count)
        {
            max = p[a];
        }
    }
    printf("票数最多的是:");
    printf("%s-%d", max.name,max.count);       //多了一个max,已经去掉
   return 0;
}[此贴子已经被作者于2017-2-11 22:28编辑过]

早知做人那么辛苦! 当初不应该下凡



											

	    

	
