精华内容
下载资源
问答
  • javaEE健康管理系统主要功能包括:投票、查看投票结果、隐藏/公布投票结果、编辑投票主题等等。本系统结构如下: 1.普通用户模块: 1).实现登录功能 2).实现用户登录的退出 3).投票 用户可以对已经开放的主题...
  • 作为Shri Bhagubhai Mafatlal Polytechnic的最后一个项目,创建了一个基于区块链的电子投票系统。 队友包括我,Sayyam Gada和Charmee Mehta。 该应用程序已根据MIT许可进行注册。 构建设置 # install dependencies ...
  • 电子投票系统.rar

    2020-05-20 14:43:16
    数据结构课程设计,因为课程需要不采用数据库,数据存储均采用文件;编程语言为java ,其中采用swing对界面...投票人进行管理,投票人可以通过登录账号登录系统对候选人进行投票。。。。。。。。具体详情在文件的报告中
  • 毕业设计论文 设计题目 企业电子投票系统 教 学 班: 学生姓名: 学 号: 指导教师: 完成日期: 摘要 目 录 TOC \o "1-3" \h \z \t "标题 5,4" 第1部分 概 述 1 第2部分 分析部分 2 21功能需求 2 第3部分 系统设计 3 31...
  • 基于群盲签名的多授权电子投票系统,张江霄,李舟军,针对单个授权电子投票系统授权者容易控制选票结果以及无法保证授权者隐私的问题,基于Ghadafi群盲签名和SP盲签名,构建了一个双盲的
  • 系统主要功能包括:投票、查看投票结果、隐藏/公布投票结果、编辑投票主题等等。本系统结构如下: 1.普通用户模块: 1).实现登录功能 2).实现用户登录的退出 3).投票 用户可以对已经开放的主题投票 4)....
  • 摘 要: 利用网格、JSP技术设计实现了一个禁止重复投票的电子投票系统。在网格环境中,针对该系统重点讨论了JDBC连接MySql数据库技术、Servlet技术和Cookie技术等,解决了基于MVC模式开发应用系统的一些难题。同时...
  • 电子投票系统

    2015-06-13 16:21:36
    c++语言实现一个简易的电子投票系统,该系统可以实现简单的投票功能
  • 摘 要: 利用网格、JSP技术设计实现了一个禁止重复投票的电子投票系统。在网格环境中,针对该系统重点讨论了JDBC连接MySql数据库技术、Servlet技术和Cookie技术等,解决了基于MVC模式开发应用系统的一些难题。同时...
  • 链票 基于区块链的电子投票系统
  • 基于环签名的基于区块链的电子投票系统 演示视频: : 幻灯片: 话题 电子投票系统将对参与选举的所有人都有利。 例如,管理员可以改善选举任务的操作,而选民可以随时随地进行选举。 此外,理想的电子投票系统...
  • 基于Hyperledger Fabric的概念验证电子投票系统 Votechain是一个小型的电子投票系统,该系统是为支持我在纽卡斯尔大学的CSC3095模块的论文项目而开发的,该项目名为: “研究Hyperledger Fabric作为基于区块链的...
  • 加密投票项目代表了基于“权益证明”区块链的电子投票系统的模拟。 先决条件 去1.14 螺栓数据库-https: 汇编 我强烈建议使用Makefile进行编译,因为该项目中有6个应用程序。 赶紧跑: ~$ make 基本概念 在此系统...
  • JAVA高校电子投票系统

    2021-09-27 21:40:20
    前台网站:关于我们、联系我们、公告信息、投票类型、投票信息、讨论信息 管理员:管理关于我们、联系我们、公告信息、投票类型、投票信息(注册学生每人只能对一个投票信息投一票)、查看学生讨论信息、回复用户...

    开发工具(eclipse/idea/vscode等):
    数据库(sqlite/mysql/sqlserver等):
    功能模块(请用文字描述,至少200字):
    前台网站:关于我们、联系我们、公告信息、投票类型、投票信息、讨论信息
    管理员:管理关于我们、联系我们、公告信息、投票类型、投票信息(注册学生每人只能对一个投票信息投一票)、查看学生讨论信息、回复用户反馈、统计投票信息
    学生:注册登录、查看公共信息、查看投票信息、进行投票、提交反馈、评论投票项目、发起讨论、回复他人讨论

    java高校电子投票系统

    java高校电子投票系统

    java高校电子投票系统

    java高校电子投票系统

    展开全文
  • 本文的目的是研究电子投票系统中的主要安全问题,特别是对 DRE 投票系统的安全威胁和对 Internet 投票系统的安全威胁。 它将侧重于如何解决安全问题。 论文分为四个部分。 第一部分将确定使用电子投票系统的标准,...
  • javaEE健康管理系统主要功能包括:投票、查看投票结果、隐藏/公布投票结果、编辑投票主题等等。本系统结构如下: 1.普通用户模块: 1).实现登录功能 2).实现用户登录的退出 3).投票 用户可以对已经开放的主题...
  • 设计了一种基于联盟链的董事会电子投票协议,用智能合约取代了传统的可信第三方,降低了系统信任成本;采用基于数字证书的身份准入机制,保证了参与投票者的身份合法性;基于椭圆曲线盲签名技术设计了电子投票协议,...
  • 由于电子投票系统是由特定组件构建的,因此这些系统的 CIA 安全三角对每一方都有特定的定义。 本文根据美国国家标准与技术研究院 (NIST) 的观点以及先驱电子投票研究人员提出的标准,介绍了每个最先进的电子投票...
  • 公共区块链上的匿名电子投票系统 Hääl的意思是爱沙尼亚语。 声音意味着人的力量。 此代码是位于根文件夹下的白皮书中提出的协议的概念验证。 它描述了使用公共区块链,没有混合网或预告票的oracle的电子投票系统...
  • 电子政务-自供电电子投票终端及应用其的电子投票系统.zip
  • 系统主要功能包括:投票、查看投票结果、隐藏/公布投票结果、编辑投票主题等等。本系统结构如下: 1.普通用户模块: 1).实现登录功能 2).实现用户登录的退出 3).投票 用户可以对已经开放的主题投票 4).查看投票结果 ...

    系统主要功能包括:投票、查看投票结果、隐藏/公布投票结果、编辑投票主题等等。本系统结构如下:
    1.普通用户模块:
    1).实现登录功能
    2).实现用户登录的退出
    3).投票
    用户可以对已经开放的主题投票
    4).查看投票结果
    用户可以查看所有已公布了结果的主题的投票结果
    2.管理员模块:
    1).实现登录功能
    2).实现用户登录的退出
    3).在后台撤销/恢复某个主题,被撤销的主题在前台不可见
    4).永久删除某个主题
    5).公布/隐藏某主题的投票结果
    6).编辑投票主题
    7).发布新主题
    8).新增/删除用户

    资料及源码

    http://www.byamd.xyz/sss.html
    

    请添加图片描述
    请添加图片描述
    请添加图片描述

    请添加图片描述
    请添加图片描述
    请添加图片描述

    展开全文
  • 导读:企业电子投票系统主要用来统计网站用户对某个主题或热门话题的意见。决策者通过这些统计数据做出相应的决策。企业电子投票系统是一般网站必备的程序之一,如果网站开发者想了解用户对该网站的意见和建议。他...

    导读:企业电子投票系统主要用来统计网站用户对某个主题或热门话题的意见。决策者通过这些统计数据做出相应的决策。企业电子投票系统是一般网站必备的程序之一,如果网站开发者想了解用户对该网站的意见和建议。他可以设计这样一个投票主题:你认为该网站如何?(A.很好 B.一般C.不好)然后提供给用户进行投票。我的投票系统具有极大的灵活性,投票类型分为单选投票和多选投票。管理员可以在线设计不同的投票主题供用户进行投票。对于该设计报告还有什么不当之处请见谅,同时也希望你能多提宝贵意见。我会认真参考您的意见,修改和完善该系统。

     

    目录

     

    功能说明

    展开全文
  • 课程设计 电子投票系统

    千次阅读 2016-12-29 10:42:38
    文件名称:电子投票系统 作者:滕建 郗小艺 完成时间:2016.12.29 #include #include #include #include #define closegr closegraph #define N 30 void main_a(); //管理员界面 void main_v();...
    文件名称:电子投票系统
    作者:滕建 郗小艺
    完成时间:2016.12.29


    
    
    #include<stdio.h>  
    #include<string.h>  
    #include<stdlib.h>  
    #include<conio.h>  
      
      
    #define closegr closegraph  
    #define N 30  
      
      
    void main_a(); //管理员界面  
    void main_v(); //投票者者界面  
    void addcandidate(); // 创建候选人  
    void addUser();//创建投票者  
    void search(); //查询候选人信息  
    void scan();//浏览候选人信息  
    void vote();  //投票者投票  
    void read();//读取候选人信息  
    void save();//存储候选人信息  
    void sort();//整理所有投票  
    void effectivevoting();//有效投票数  
    void empty();//清空候选人  
      
    void Votexiugai();//票数修改  
      
    int total=0;  
    int c_total=0;  
    int i=0;  
      
      
      
    typedef struct candidate//候选人数据结构体  
    {  
        long number;//候选人编号  
        char name[20];//候选人姓名  
        char intro[400];//候选人简介  
        int vote;//候选人得票数  
    }candidate;  
      
      
      
    typedef struct user//投票者数据结构体  
    {  
      char name[20];//投票者姓名  
      char ps[8];//对应密码  
      int power;//权限  
    }user;  
      
      
      
    candidate c_man[N];  
    user total_user[N];  
      
      
      
      
    void main_v()//投票者者界面  
    {     
          
          
        int key;  
        do   
        {     
            printf("*************************************************************\n");  
            printf("********************欢迎进入投票员界面***********************\n");  
            printf("*************************************************************\n");  
            printf("**  1.浏览所有候选人              2.查询候选人信息         **\n");     
            printf("**  3.投票                        4.退出                   **\n");     
            scanf("%d",&key);  
      
            switch(key)  
            {  
             case 1:scan();break;  
             case 2:search();break;  
             case 3:vote();break;  
             case 4:break;  
             default:break;  
             }  
      
         }while(key!=4);  
    }  
      
    void vote()  //投票者投票  
    {     
          
          
        long candidatenum;//定义进行操作时的临时结构体变量  
        int i,flag;  
        char DataFile[20]="DataFile.txt",next;// DataFile存储候选人信息的文件名,next为是否进行下一次投标操作的选项     
        candidate TempS;  
        FILE *fp;  
      
    begin:  
          
        flag=0;//flag用来标志是否找对应编号,即投票是否成功  
        read();  
        printf("请输入您要投票的候选人的号码:");  
        scanf("%ld",&candidatenum);  
        printf("您所投票的候选人号码是:%ld\n",candidatenum);  
        for(i=0;i<c_total;i++)  
        {  
            if(c_man[i].number==candidatenum)  
            {  
                flag=1;  
                c_man[i].vote++;  
            }  
        }  
        if(flag)  
        {  
            printf("投票成功\n");  
      
      
            fp=fopen(DataFile,"wb");  
      
            if(fp==NULL)//如果当前文件不存在,提示打开文件失败  
            {  
                printf("\nOpen file is fail!End with any key.\n",DataFile);  
                perror("Open file fail");  
                getch();  
                exit(1);  
            }  
            for(i=0;i<c_total;i++)  
            {  
      
                fwrite(&c_man[i],sizeof(candidate),1,fp);  
      
            }  
            fclose(fp);  
        }  
        else  
        {  
            printf("投票失败!您要投票的号码不存在\n");  
            printf("按任意键返回首页!             \n");  
            getch();  
            return;  
        }  
        fp=fopen(DataFile,"rb");// 显示投票后的情况  
      
      
        if(fp==NULL)  
        {  
            printf("\nOpen file %s fail! End With any key \n",DataFile);  
            perror("Open file fail");  
            getch();  
            exit(1);  
        }  
      
            printf("整理后的最新投票情况:\n");  
            printf("\n候选人号码     \t候选人姓名      \t票数\n");//"\t"  横向跳到下一制表符位置  
      
        while(fread(&TempS,sizeof(candidate),1,fp)!=(int)NULL)  
        {  
            if(TempS.number!=0)  
      
            printf("\n%ld            \t%s              \t%d \n",TempS.number,TempS.name,TempS.vote);  
        }  
      
        fclose(fp);  
      
        printf("\n继续吗?是(Y)/否(N): ");  
      
        fflush(stdin);  
      
        next=getchar();  
      
        putchar('\n');  
      
        if(next=='y'||next=='Y')goto begin;  
      
    }  
      
    void main_a()//管理员界面  
    {      
          
        int key;  
        do   
        {     
            printf("*************************************************************\n");  
            printf("********************欢迎进入管理员界面***********************\n");  
            printf("*************************************************************\n");  
            printf("**  1.创建新候选人                    2.创建新用户         **\n");     
            printf("**  3.查询候选人信息                  4.浏览所有候选人     **\n");     
            printf("**  5.整理所有投票                    6.有效投票数         **\n");   
            printf("**  7.清空候选人信息                  8.票数清零           **\n");  
            printf("**                   0.退出                                **\n");  
            scanf("%d",&key);  
            switch(key)  
            {  
             case 1:addcandidate();break;  
             case 2:addUser();break;  
             case 3:search();break;  
             case 4:scan();break;  
             case 5:sort(); break;  
             case 6:effectivevoting(); break;  
             case 7:empty(); break;  
             case 8:Votexiugai(); break;  
             case 0:break;  
             default:break;  
      
            }  
       }while(key!=0);  
    }  
      
    void addcandidate()//创建候选人  
    {      
          
        char DataFile[20]="DataFile.txt";  
        FILE * fp=NULL;  
        char c;  
        int over_flag=0;  
        candidate TempS;  
        read();  
        fp=fopen(DataFile,"ab+");  
      
        do  
        {  
          printf("                 *****************创建新候选人*****************\n");  
          printf("请输入:");  
      
          printf("候选人号码:");scanf("%ld",&TempS.number);  
            for(i=0;i<c_total;i++)//检查输入编号是否有重复  
            {  
                if(TempS.number==c_man[i].number)  
                {  
                    printf("该号码已存在.按任意键浏览所有候选人...");  
                    getch();  
                    over_flag=1;  
                    break;  
                }  
            }  
            if (over_flag)  
            {  
                over_flag=0;  
                continue;  
            }  
            printf("        姓名:");scanf("%s",&TempS.name);  
      
            TempS.name[19]='\0';  
      
            for(i=0;i<c_total;i++)  
            {  
                if(strcmp(TempS.name,c_man[i].name)==0)  
                {  
                    printf("该姓名已存在!请再输入一次!按任意键继续...");  
                    getch();  
                    over_flag=1;  
                    break;  
                }  
            }  
            if (over_flag)  
            {  
                over_flag=0;  
                continue;  
            }  
            printf("        简介:");  
            fflush(stdin);  
            gets(TempS.intro);  
            TempS.intro[399]='\0';  
            TempS.vote=0;   
            c_man[c_total]=TempS;//将数据加入原始数据,用于下一次输入比较  
            c_total++;  
            if(fwrite(&TempS,sizeof(candidate),1,fp)!=1)  
            {  
                printf("\nwrite file is fail! End with any key\n",DataFile);  
                perror("write file fail");  
                getch();  
                exit(1);  
            }  
            printf("要继续创建新的候选人吗?是(Y)/否(N): ");  
      
            fflush(stdin);  
      
            c=getchar();  
      
        }while(c=='Y'||c=='y');  
      
      
        fclose(fp);  
        printf("候选人资料:\n");    // 在屏幕上显示文件内容  
        printf("*****************************************************************");  
        fp=fopen(DataFile,"rb");  
        if(fp==NULL)  
        {  
            printf("\nOpen file %s fail! 任意键结束 \n",DataFile);  
            perror("Open file fail");  
            getch();  
            exit(1);  
        }  
        while(fread(&TempS,sizeof(candidate),1,fp)!=(int)NULL)  
        {  
            printf("\n号码:%-15ld姓名:%-15s简介:%s",TempS.number,TempS.name,TempS.intro);  
        }  
        fclose(fp);  
        printf("\n*****************************************************************");  
        printf("\n按任意键返回首页!\n");  
        getch();  
    }  
      
    void read()//读取候选人信息  
    {     
          
      
        char DataFile[20]="DataFile.txt";  
        FILE * fp=NULL;  
        c_total=0;  
        fp=fopen(DataFile,"rb");  
        if(fp==NULL)  
        {  
            printf("\nOpen file %s fail! 任意键结束 \n",DataFile);  
            perror("Open file fail");  
            getch();  
            exit(1);  
        }  
        while(fread(&c_man[c_total],sizeof(candidate),1,fp)!=(int)NULL)  
        {  
            c_total++;  
        }  
        fclose(fp);  
    }  
      
    void addUser()//创建用户  
    {     
          
        FILE *fp=NULL;  
        char DataFile[20]="用户.txt";//存储投票人信息的文件名  
        user TempS;  
        int over_flag=0;  
        char c;  
        fp=fopen("用户.txt","rb");//读入原始数据,用于检查输入是否有重复  
      
        if(fp==NULL)  
        {  
            printf("\nOpen file %s fail! 任意键结束 \n",DataFile);  
            perror("Open file fail");  
            getch();  
            exit(1);  
        }  
      
        while(fread(&total_user[total],sizeof(user),1,fp)!=(int)NULL)  
        {  
            total++;  
        }  
      
      
        fclose(fp);  
        fp=fopen(DataFile,"ab+");  
        do  
        {  
            printf("                *****************创建新用户*****************                   ");  
            printf("请输入:");  
            printf("用户名:");scanf("%s",&TempS.name);  
            TempS.name[19]='\0';  
            for(i=0;i<total;i++)//检查输入姓名是否有重复  
            {  
                if(strcmp(TempS.name,total_user[i].name)==0)  
                {  
                    printf("该用户名已存在!按任意键浏览所有用户...");  
                    getch();  
                    over_flag=1;  
                    break;  
                }  
            }  
            if (over_flag)  
            {  
                over_flag=0;  
                continue;  
            }  
            printf("  密码:");  
      
            scanf("%s",&TempS.ps);  
      
            TempS.ps[7]='\0';  
      
            printf("  权限:");  
      
            scanf("%d",&TempS.power);  
      
            if(TempS.power!=1)  
            {  
                TempS.power=0;  
            }  
            total_user[total]=TempS;//将数据加入原始数据  
      
            total++;  
      
            if(fwrite(&TempS,sizeof(user),1,fp)!=1)  
            {  
                printf("\nwrite file is fail! 任意键结束\n",DataFile);  
      
                perror("write file fail");  
      
                getch();  
      
                exit(1);  
            }  
            printf("要继续创建新用户吗?是(Y)/否(N):");  
            getchar();  
      
            c=getchar();  
      
        }while(c=='Y'||c=='y');  
      
        fclose(fp);  
      
        printf("用户资料数据处理完毕.\n",DataFile);//在屏幕上显示文件内容  
      
        printf("所有用户具体情况如下:\n");  
      
        fp=fopen(DataFile,"rb");  
      
        printf("************************************************************");  
        if(fp==NULL)  
        {  
            printf("\nOpen file is fail! End With any key \n",DataFile);  
      
            perror("Open file fail");//将错误信息输出  
      
            getch();  
      
            exit(1);  
        }  
        printf("\n姓名\t\t密码\t\t权限\n");  
      
        while(fread(&TempS,sizeof(user),1,fp)!=(int)NULL)  
        {  
            printf("\n%s\t\t%-8s\t\t%d\n",TempS.name,TempS.ps,TempS.power);  
        }  
        fclose(fp);  
      
        printf("************************************************************");  
      
        printf("\n按任意键返回首页!\n");  
      
        getch();  
      
    }  
      
    void scan()//浏览候选人信息  
    {      
          
        read();  
      
        printf("候选人资料:\n");  
      
        printf("***************************************************************\n");  
      
        for(i=0;i<c_total;i++)  
        {  
            printf("号码:%-15ld",c_man[i].number);  
            printf("姓名:%-19s",c_man[i].name);  
            printf("简介:%s\n",c_man[i].intro);  
        }  
        printf("***************************************************************");  
        printf("\n按任意键返回首页!");  
        getch();  
    }  
      
    void search() //查询候选人信息  
    {   
      
        char c;  
      
        long number;  
      
        int flag=0;  
      
        read();  
      
        do  
        {  
            printf("\n\t请输入要查询的候选人号码:");  
            scanf("%ld",&number);  
            for(i=0;i<c_total;i++)  
            {  
                if(number==c_man[i].number)  
                {  
                    printf("\t您要查询的候选人信息如下:\n\n");  
                    printf("\t号码:%ld \n",c_man[i].number);  
                    printf("\t姓名:%s \n",c_man[i].name);  
                    printf("\t简介:%s \n",c_man[i].intro);  
                    flag=1;  
                    break;  
                }  
            }  
            if (flag)  
            {  
                flag=0;  
            }  
            else  
            {  
                printf("\t对不起,没有您要查询的候选人\n");  
            }  
                printf("\t要继续查询候选人吗?是(Y)/否(N): ");  
            getchar();  
            c=getchar();  
        }while((c=='Y')||(c=='y'));  
    }  
      
    void sort()//整理所有投票  
    {     
          
        int i,k,j;  
      
        candidate c_man2[N]/*存放排序后的数据 */,   temp;   
        read();  
        for(i=0;i<c_total;i++)  
           c_man2[i]=c_man[i];    
        for(i=0;i<c_total-1;i++)//用选择法排序  
        {  
           k=i;  
           for(j=i+1;j<c_total;j++)  
           {  
              if(c_man2[k].vote<c_man2[j].vote)  
                  k=j;  
           }  
           if(k!=i)  
           {  
             temp=c_man2[i];  
             c_man2[i]=c_man2[k];  
             c_man2[k]=temp;  
           }  
        } //排序结束                       
        printf("票数从高到低排列如下:\n");  
        printf("***********************************************\n");  
        printf("*号码           候选人           票数         *\n");  
        printf("***********************************************\n");  
        for(i=0;i<c_total;i++)       //输出排序后的结果  
        {  
           printf("* %-13ld %-13s    %-6d       *\n",c_man2[i].number,c_man2[i].name,c_man2[i].vote);  
        }  
        printf("***********************************************\n");              
        printf("按任意键返回首页!\n");  
        fflush(stdin);  
        getch();  
    }  
    void effectivevoting()//有效投票数--  
    {      
        read();  
        int sum=0;  
        int i;  
        for(i=0;i<c_total;i++)  
        {  
            if(c_man[i].vote !=0)  
            {  
                 
                sum=sum+c_man[i].vote;  
            }  
        }  
      printf("有效投票数为:%ld\n",sum);  
    }  
      
          
    void empty()//清空候选人  
    {  
         FILE * fp;  
        fp = fopen("DataFile.txt", "w");//以只写方式打开文件时 其实就是创建了一个新文件(空的)。 如果本来存在文件,也同样会被覆盖  
        if(fp == NULL)  
            printf("do empty file %s failed\n", fp);  
        else fclose(fp);  
         printf("数据清空完成\n");  
      
      
    }  
    void main()  
    {  
      
        FILE * fp=NULL;  
        char DataFile[20]="用户.txt";  
        char relogin;//是否重新登录的标志  
        int success=0;  
        user input_user,temp_user;  
        printf("管理员账号:滕健  密码都为123456\n");  
        printf("\n");  
        printf("*************************************************************\n");  
        printf("********************欢迎登录电子投票系统*********************\n");  
        printf("*************************************************************\n");  
        printf("*                                                           *\n");  
    again:  
            printf("                请输入用户名:            &&");  
            scanf("%s",input_user.name);  
            printf("                  请输入密码:            &&");  
            scanf("%s",input_user.ps);  
            printf("*************************************************************\n");  
        fflush(stdin);  
      
         fp=fopen("用户.txt","rb");//读入原始数据,用于检查输入是否有重复  
      
        if(fp==NULL)  
        {  
            printf("\nOpen file %s fail! 任意键结束 \n",DataFile);  
            perror("Open file fail");  
            getch();  
            exit(1);  
        }  
      
        while(fread(&total_user[total],sizeof(user),1,fp)!=(int)NULL)  
        {  
            total++;  
        }  
      
      
        fclose(fp);  
          
         if(strcmp(input_user.name,"滕健")==0 && (strcmp(input_user.ps,"123456")==0))//校验用户名和密码,若是管理员,并调用管理员界面  
         {  
                printf("\nlogin successful!");  
                success=1;   
                printf("\n\n\n\n\n\n\n         您是管理员!欢迎您登录系统!正在进入管理员界面...\n");  
                main_a();  
            }  
        else  
        {  
             
           for(i=0;i<30;i++)  
           {    
                   
                
               
                if(strcmp(input_user.name,total_user[i].name)==0 && (strcmp(input_user.ps,total_user[i].ps)==0))  
            {  
                printf("\nlogin successful!");  
                success=1;  
                printf("\n\n\n\n\n\n\n         您是投票者!欢迎您登录系统!正在进入投票者界面...\n");  
                main_v();  
            }  
      
           }  
      
        }  
        fclose(fp);  
        if(success==0)  
        {  
            printf("%d",c_total);  
            fflush(stdin);//文件数据更新  
            printf("%d",c_total);  
            printf("\n用户名或密码错误!继续输入吗?是(Y)/否(N): ");  
            fflush(stdin);  
      
            relogin=getchar();  
            if((relogin=='Y')||(relogin=='y'))  
            {  
                goto again;  
            }  
            else  
            {  
                printf("结束\n");  
                exit(0);  
            }  
        }  
      
      
    }  
      
    void read1()  
    {     
        char DataFile[20]="DataFile.txt";  
        FILE * fp=NULL;  
        c_total=0;  
        fp=fopen(DataFile,"rb");  
        if(fp==NULL)  
        {  
            printf("\nOpen file %s fail! 任意键结束 \n",DataFile);  
            perror("Open file fail");  
            getch();  
            exit(1);  
        }  
        while(fread(&c_man[c_total],sizeof(candidate),1,fp)!=(int)NULL)  
        {  
            c_total++;  
        }  
        fclose(fp);  
      
    }  
      
    void Votexiugai()//票数修改  
    {  
        long candidatenum;//定义进行操作时的临时结构体变量  
        int i,flag;  
        char DataFile[20]="DataFile.txt",next;// DataFile存储候选人信息的文件名,next为是否进行下一次投标操作的选项     
        candidate TempS;  
        FILE *fp;  
      
      
    begin:  
          
        flag=0;//flag用来标志是否找对应编号  
        read();  
          
          
         
        for(i=0;i<c_total;i++)  
        {  
              
              
                flag=1;  
                c_man[i].vote=0;  
             
        }  
        if(flag)  
        {  
            printf("修改成功\n");  
      
      
            fp=fopen(DataFile,"wb");  
      
            if(fp==NULL)//如果当前文件不存在,提示打开文件失败  
            {  
                printf("\nOpen file is fail!End with any key.\n",DataFile);  
                perror("Open file fail");  
                getch();  
                exit(1);  
            }  
            for(i=0;i<c_total;i++)  
            {  
      
                fwrite(&c_man[i],sizeof(candidate),1,fp);  
      
            }  
            fclose(fp);  
        }  
          
        fp=fopen(DataFile,"rb");// 显示投票后的情况  
      
      
        if(fp==NULL)  
        {  
            printf("\nOpen file %s fail! End With any key \n",DataFile);  
            perror("Open file fail");  
            getch();  
            exit(1);  
        }  
      
        printf("整理后的最新投票情况:\n");  
            printf("\n候选人号码     \t候选人姓名      \t票数\n");//"\t"  横向跳到下一制表符位置  
        while(fread(&TempS,sizeof(candidate),1,fp)!=(int)NULL)  
        {  
            if(TempS.number!=0)  
            printf("\n%ld            \t%s              \t%d \n",TempS.number,TempS.name,TempS.vote);  
        }  
        fclose(fp);  
        printf("\n继续吗?是(Y)/否(N): ");  
        fflush(stdin);  
        next=getchar();  
        putchar('\n');  
        if(next=='y'||next=='Y')goto begin;  
    }  



    运行结果:

    管理员登陆

    管理员界面


    创建候选人


    创建用户


    查询候选人


    浏览候选人


    投票者界面


    查询候选人


    整理投票


    统计有效票数


    清空候选人信息


    票数清零


    展开全文
  • C语言课程设计报告-电子投票 系统 PAGE PAGE # 作者: 日期: C语言课程设计报告 电子投票系统 学 院 专 业 年 级 姓 名 学 号 教 师 年 月曰 广东工业大学计算机学院制 一 ?设计题目 电子投票系统 二.课程设计目的 ...
  • 电子投票系统原型 为康奈尔大学INFO 1140的思想练习而创建。 有没有搞错? 随附的幻灯片平台为该主题提供了很多启示: : 该回购的状态 此仓库处于ARCHIVE(存档)状态,这意味着此处仅是历史文物。 没有什么可用于...
  • CHVote旨在成为一个开源的,公共拥有的投票系统。 这是日内瓦州总理府与日内瓦IT部门合作的结果。 瑞士的瑞士,巴塞尔市,伯尔尼,日内瓦和卢塞恩4个州目前都使用CHVote进行投票或选举。 目录 发布的组件 以下组件...
  • JSP企业电子投票系统论文.pdf
  • WebVoter是一个免费(如语音)投票系统,旨在允许通过网络进行安全投票。 该系统还可以轻松存储手动选票。 该系统已分别于2004年,2005年和2006年在,和选举中得到证明(和结果计算方法)。 该系统允许同时运行多个...
  • 已有几种电子投票系统被提出以取代现有利用电话 信函等工作的投票系统。然而, 许多电子投票系统或是完全或是部分地忽略了 电子投票的安全问题。这已经阻碍了对电子投票的普遍接受和信任。讨论并指出了产生于电子投票...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 12,819
精华内容 5,127
关键字:

电子投票系统