标题:初学结构体,程序老是崩,求大神指点
只看楼主
炎天
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:桃花岛
等 级:贵宾
威 望:29
帖 子:1218
专家分:4986
注 册:2016-9-15
得分:0 
要是候选人票数一样呢
程序代码:
#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编辑过]


早知做人那么辛苦!  当初不应该下凡
2017-02-11 22:25
cjj843138864
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2016-12-23
得分:0 
回复 10楼 renkejun1942
好的
2017-02-11 22:27
cjj843138864
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2016-12-23
得分:0 
回复 11楼 炎天
2017-02-11 22:37
azzbcc
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:江西财经大学
等 级:贵宾
威 望:81
帖 子:3293
专家分:12919
注 册:2012-11-4
得分:2 
我记得_s函数还有一个 buffer size 参数,不带会报错误?

不太确定,手头没有环境,你填上试试看先。


[fly]存在即是合理[/fly]
2017-02-11 23:34
东方橙子皮
Rank: 1
等 级:新手上路
帖 子:2
专家分:2
注 册:2017-3-26
得分:0 
我也是用VS学结构体,程序也是崩了,出现什么数据冲突。。。同求解决方法
2017-03-26 23:32



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-474138-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.021394 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved