标题:一个投票算法!请高手指出错误!
取消只看楼主
wwwjw
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2007-12-28
结帖率:33.33%
 问题点数:0 回复次数:1 
一个投票算法!请高手指出错误!
int i,j,index[100];
    for(i=0;i<100;i++)
    {
        for(j=0;j<10;j++)
          if(xx[i][j]==0) continue;     /* 哪一行全为0,便把这一行的标示赋值为1*/
          if(j==9) index[i]=1;
        for(j=0;j<10;j++)
          if(xx[i][j]==1) continue;        /* 哪一行全为1,便把这一行的标示赋值为1*/
          if(j==9) index[i]=1;
        if(index[i]!=1)              /* 统计标示不为1的行(即改行不全为0或者1)*/
        {
            for(j=0;j<10;j++)         /* 的对应列的1数字出现的次数*/
            if(xx[i][j]==1) yy[j]++;
        }


这个算法有问题吗?
我没看出来,可运行的时候显示每个列的1出现的次数都为0???????????????
搜索更多相关主题的帖子: 算法 index continue 赋值 
2008-04-10 09:30
wwwjw
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2007-12-28
得分:0 
10个人100行的数据文件f.dat,存放格式每行长度均为10位,每行第一位数表示第一个人的选中情况,第二位数表示第二人的选中情况,依次类推,内容均为1或者0字符,1表示选中,0表示未被选中,全选或者全不选均视为无效选票,先把数据文件f.dat读入xx[100][11],编制函数统计每个人的选票数,把得票数分别存入到y[0]到y[9],我的这个函数就是想实现统计选票,下面是我改进的函数,改进了一下,不过还是错误,和同学商量,都没觉得有错误?
int i,j=0,k;
    char *p;
    for(i=0;i<100;i++)
    {
        p=xx[i];
        while(*p)
        {
            if(*p=='0') j++;
             p++;
        }

        if(j!=0&&j!=10)
        {
            for(k=0;k<10;k++)
            yy[k] += xx[i][k]-'0';
        }
2008-04-10 10:39



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




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

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