注册 登录
编程论坛 C语言论坛

文件中简单投票的编写,求助

棒棒哒我 发布于 2017-01-21 13:57, 644 次点击
文件已经创好,输入要一个投票的人,文件中没有就添加进去,有票数就加一
错误警告都没有了,但是运行就出错。求大神帮忙看看。

#include<stdio.h>
#include<stdlib.h>
main()
{FILE *fp;
char c[50];        //候选者
int s[50]={0};    //票数   
int num=1;        //总票数
int i;            //循环变量
char ch;        //添加的候选者
if((fp=fopen("toupiao.txt","r"))==NULL)
    {printf("打开投票文本失败\n");exit(0);
    }
fscanf(fp,"%d",num);
for(i=0;!feof;i++)
    {if(s[i]!=0)
    fscanf(fp,"%s",&c[i]);
    fscanf(fp,"%d\n",&s[i]);
    }
scanf("%s",&ch);for(i=0;i<num;i++)
    {
        if(ch==c[i])
        {s[i]++;
        num++;
        }
        else
            c[num]=ch;
    }

fp=fopen("toupiao.txt","w");
fprintf(fp,"%d\n",num);
for(i=0;i<num;i++)
    {fprintf(fp,"%s",c[i]);
    fprintf(fp,"%4d\n",s[i]);
    }
fclose(fp);
return 0;
}
3 回复
#2
kin3z2017-01-21 14:40
我想你编译一下看看吧,我编译你的代码也没通过。
如果你是测试着过来的,我想你编译失败了,继续运行测试则只是上个版本的测试结果,并不是本次的结果。
多留意一下编译信息。
#3
wp2319572017-01-22 09:37
没有文本文件  没法测试  编译倒是没啥问题  代码看着太乱 风格不好
#4
zbjzbj2017-01-22 09:46
char ch;        //添加的候选者
候选者是一个字符,怎么表示的?
1