沧海雨季 发表于 2017-9-8 07:55:56

关于C语言结构体的问题

题目:对三个候选人进行投票统计,每次输入以一个投票人的名字,最后输出各人的得票结果,并且输出票数最多的候选人
编译的时候报错没有定义。。可是我明明定义了的?这是什么原因?#include <stdio.h>
#include <string.h>

char *winner();
int main()
{
        struct person                                                //定义结构名person以及结构体变量human;
        {
                char *name;
                int count;
        }human={
                                {"小红",0},
                                {"小明",0},
                                {"小花",0}
                                        };

        printf("欢迎进入良好公民评选投票系统:^-^");
        printf("候选人有 : 小红 , 小明 , 小花");

        int i,j;
        char human_name;
        for(i=0;i<10;i++)                                        //输入投票者的选择且将选择与候选人对比;
        {
                printf("第 %2d 位同学,请做出你的选择: ",i+1);
                scanf("%s",human_name);

                for(j=0;j<3;j++)
                {
                        if( 0 == strcmp(human_name,human.name) )
                        {
                                human.count++;
                        }
                }
                human_name="";
        }
        printf("\n");

        for(i=0;i<3;i++)
        {
                printf("%s同学的票数为: %d\n",human.name,human.count);
        }
        printf("\n");

        printf("本次投票活动的胜利者的: %s", winner() );
        printf("\n");

        return 0;
}

char *winner()
{
      int i =0 , winner = i;
      
      for( i=1; i < NUM; i++ )
      {
            if( human.count < human.count )
            {
                  winner = i;
            }
      }
      
      return human.name;
}

ba21 发表于 2017-9-8 09:47:29

沧海雨季 发表于 2017-9-12 23:17:55

ba21 发表于 2017-9-8 09:47


噢噢知道啦,谢谢~
页: [1]
查看完整版本: 关于C语言结构体的问题