文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 精品软件 | 下载排行 | 推荐下载 | 免费看大片 | WPS | 杀毒软件
清风网络
首 页 软件下载 网络学院 数码学院
QQ 电脑入门 游戏 操作系统 图形处理 办公软件 媒体动画 精文荟萃 工具软件 网络编程 程序开发 网络技术 认证考试 网站建设 文章专栏
当前位置:清风网络学院程序开发C/C++选票
精品推荐
特别推荐
·C语言编程易犯毛病集合
·C语言编程常见问题解答(目录)
·C#程序开发中的常用函数汇总
·C/C++笔试、面试题目大汇总
·Beej的网络socket编程指南
·socket编程原理
·C语言的常用库函数使用方法分析及用途
·在C语言中如何处理时间和日期
·C++设计模式之Singleton
·VC++动态链接库编程之MFC扩展 DLL
·TCP/IP网络重复型服务器通信软件的设计
·DirectX游戏开发入门
·经典与现代的结合:在MFC中集成RAD .NET框架
·Windows API-GDI入门基础知识详解(2)
·Visual C++ 入门精解
·C#基础概念二十五问
·用C#实现pdf文件的完整性验证
·成为嵌入式程序员应知道的0x10个问题
·TCP/IP编程实现远程文件传输
·几个C#编程的小技巧
热点TOP10
·学生成绩管理系统实习
·C#编写的windows计算器-源代码
·socket编程原理
·飞机订票系统设计
·C/C++笔试、面试题目大汇总
·TCP/IP编程实现远程文件传输
·Visual C++ 实现数字化图像的分割
·C语言图形函数
·C#基础概念二十五问
·改编 的 C版 职工管理系统
·C语言的常用库函数使用方法分析及用途
·用C语言实现Ping程序功能
·C#源码读取excel数据到程序中-SQL SERVER-到dataset中
·C# GridView 排序及分页
·进程调度模拟程序
·Windows下C语言网络编程快速入门
·通讯录的源代码(用链表实现)
·DirectX游戏开发入门
·在Visual Studio.NET中使用Crystal Report(上)
·asp.net中调用javascript函数实现多功能日期控件示例

选票

日期:2007年5月2日 作者: 查看:[大字体 中字体 小字体]


/*

    以下是我在学习C语言时编的一个选票程序,大家按提示输入,在文本模式下输出框式内容和柱状图.本程序以在TC2.0下编译通过,若有何建议,欢迎联系.

QQ:281607998

E_mail:yanyg02@163.com

*/

#include<stdio.h>
#define SC scanf
#define PR printf
struct person
{
char name[20];
int count,code;
float pec;
}leader[20];
main()
{
int n,i;
char c;
void scan(struct person leader[],int n);
void arith(struct person leader[],int n);
void diagram(struct person leader[],int n);
PR("The Course Is Made By Tongxin'Yiban Yan Yonggang. Now Press Enter For Running The Course. ");
while(getchar()!=' ');
while(1)
{PR(" Input the number of candidates:");
do
{SC("%d",&n);
if(n>1&&n<=20)break;
else if(n<=1)PR("The candidates'number is too small.Input again!");
else if(n>20)PR("The candidates'number is too large.Input again!");
}while(1);
scan(leader,n);
arith(leader,n);
PR(" Now press any key for looking diagram.");
getchar();
getchar();
diagram(leader,n);
for(;;)
{
PR(" Continued(Y/N)?");
c=getchar();
getchar();
if(c=='Y'c=='y'c=='N'c=='n')break;
}
if(c=='y'c=='Y')
else break;
}
}
void scan(struct person leader[],int n)
{
int i,j,k,flag=1;
static char a1[67][35];
char c;
for(j=0;j<34;j++)
for(i=0;i<67;i+=3)
a1[i][j]=196;
for(i=0;i<67;i++)

for(i=3;i<=3*n;i+=3)

a1[0][0]=218;a1[0][20]=194;a1[0][34]=191;a1[3*n+3][0]=192;a1[3*n+3][20]=193;a1[3*n+3][34]=190;
while(flag)
{
PR(" Input the candidates name and code.If only input name,system will give code one by one. ");
PR("If only input name,press S,else press others.");
getchar();
c=getchar();
if(c=='s'c=='S')
{
PR("Input name:");
for(i=0;i<n;i++)
}
else
{PR("Input name and code:");
for(i=0;i<n;i++)SC("%s%d",&leader[i].name,&leader[i].code);}
PR("This is candidates'name and code:");
a1[1][9]='N';a1[1][10]='a';a1[1][11]='m';a1[1][12]='e';
a1[1][27]='C';a1[1][28]='o';a1[1][29]='d';a1[1][30]='e';
for(i=0;i<2;i++)
{PR(" ");
for(j=0;j<35;j++)PR("%c",a1[i][j]);}
for(i=0;i<4;i++)
for(i=3;i<=3*n+3;i+=3)
for(j=0;leader[i/3-1].name[j]!='';j++)a1[i+1][j+1]=leader[i/3-1].name[j];
for(i=3;i<=3*n+3;i++)
{PR(" ");
if((i+2)%3!=0i<3)for(j=0;j<35;j++)PR("%c",a1[i][j]);
else PR("%c%-19s%c%10d   %c",a1[i][0],leader[i/3-1].name,a1[i][20],leader[i/3-1].code,a1[i][34]);
}
for(;;)
{
PR(" Right(Y/N)?");
getchar();
c=getchar();
if(c=='Y'c=='y')
else if(c=='N'c=='n')break;
}
}
}
void arith(struct person leader[],int n)
{
int i,j,k,s=0,x,flag=1;
float m,p;
static char c,a1[67][55];
for(j=0;j<55;j++)
for(i=0;i<67;i+=3)
a1[i][j]=196;
for(i=0;i<67;i++)

for(i=3;i<=3*n;i+=3)

a1[0][0]=218;a1[0][20]=194;a1[0][34]=194;a1[0][44]=194;a1[0][54]=191;a1[3*n+3][0]=192;a1[3*n+3][20]=193;a1[3*n+3][34]=193;a1[3*n+3][44]=193;a1[3*n+3][54]=190;
while(flag)
{
PR("Input the total of vote(an integar):");
SC("%d",&k);
PR("Input the needed revery(a persontage):");
SC("%f%c",&m,&c);
PR("Now beginning vote: ");
for(;;)

s++;
if(s>=k)break;
}
p=(float)s/k*100;
if(p>=m)
{
for(i=0;i<n;i++)leader[i].pec=(float)leader[i].count/s*100;
a1[1][5]='N';a1[1][6]='a';a1[1][7]='m';a1[1][8]='e';
a1[1][24]='C';a1[1][25]='o';a1[1][26]='d';a1[1][27]='e';
a1[1][37]='C';a1[1][38]='o';a1[1][39]='u';a1[1][40]='n';a1[1][41]='t';
a1[1][46]='P';a1[1][47]='e';a1[1][48]='r';a1[1][49]='c';a1[1][50]='e';a1[1][51]='e';a1[1][52]='n';a1[1][53]='t';
for(i=3;i<=3*n+3;i+=3)
for(j=0;leader[i/3-1].name[j]!='';j++)a1[i+1][j+1]=leader[i/3-1].name[j];
for(i=0;i<=3*n+3;i++)
{PR(" ");
if((i+2)%3!=0i<3)for(j=0;j<55;j++)PR("%c",a1[i][j]);
else PR("%c%-19s%c%10d   %c%7d  %c%8.2f%%%c  ",a1[i][0],leader[i/3-1].name,a1[i][20],leader[i/3-1].code,a1[i][34],leader[i/3-1].count,a1[i][44],leader[i/3-1].pec,a1[i][54]);
}
}
else
{PR("Less of needed revery,It's a invalid vote,input again! ");
for(i=0;i<20;i++)leader[i].count=0;s=0;continue;}
break;
}
}
void diagram(struct person leader[],int n)
{
int i,j,k=0;
static char a[21][66],*p1,*p2;
p1="Percent";
p2="Code";
a[0][0]=24;a[20][65]=62;
for(i=1;i<21;i++)a[i][0]=179;
for(i=1;i<65;i++)a[20][i]=196;
for(j=5;j<=5*n;j+=5)

a[20][0]=192;
PR("       %s ",p1);
for(i=0;i<21;i++)
{
if(i%2==0)PR("       ");
else PR("%6.2f%%",(float)(20-i)*5);
for(j=0;j<66;j++)
PR("%c",a[i][j]);
if(i==20)PR("%s",p2);
PR(" ");
}
PR("        ");
for(i=0;i<5*n;i+=5)PR("%5d",leader[i/5].code);
for(j=5;j<=5*n;j+=5)
for(i=1;i<20;i++)
a[i][j]=0;
PR(" ");
}



[1] [2] 下一页 




上一篇:行==列==对角线 ◎ 魔幻矩阵

下一篇:学生成绩管理系统实习

选票 相关文章:
·选票
选票 相关软件:

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.vipcn.com
| 帮助(?) | 版权声明 | 友情连接 | 关于我们 | 信息发布
Copyright 2007 www.vipcn.com All Rights Reserved. 鄂ICP备05000083号Powered by:vipcn