首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
现有一个10个人的100行选票数据文件IN.DAT,其数据存放的格式是每条记录的长度均为10位,第一位表示第一个人选中的情况,第二位表示第2个选中的情况,以此类推;内容均为字符0或1,0表示此人未被选中,1表示此人被选中。若一张选票人数大于5个人时被认为无
现有一个10个人的100行选票数据文件IN.DAT,其数据存放的格式是每条记录的长度均为10位,第一位表示第一个人选中的情况,第二位表示第2个选中的情况,以此类推;内容均为字符0或1,0表示此人未被选中,1表示此人被选中。若一张选票人数大于5个人时被认为无
admin
2013-12-17
47
问题
现有一个10个人的100行选票数据文件IN.DAT,其数据存放的格式是每条记录的长度均为10位,第一位表示第一个人选中的情况,第二位表示第2个选中的情况,以此类推;内容均为字符0或1,0表示此人未被选中,1表示此人被选中。若一张选票人数大于5个人时被认为无效。给定函数Rdata()的功能是把选票数据读入到字符串组string中。请编写CountRs()函数。其功能是实现:统计每个人的选票数并把票数依次存入result[0]到result[9],把结果resuit输出到OUT.DAT中。
注意:部分源程序已经给出。
请勿改动主函数main()和输出函数Wdata()的内容。
试题程序:
#include
char string[1003[11];
int result[10];
int Rdata(void);
void Wdata(void);
void CountRs(void)
{
}
void main()
{
int i;
for(i=0;i<10;i++)
result
=0;
if(Rdata())
{
printf(“选票数据文件IN.dat不能打开!\n\
007”);
return;
}
CountRs();
Wdata();
}
int Rdata(void)
{
FILE*fp;
int i;
if((fp=fopen(“IN.dat”,“r”))==NULL)
return 1;
for(i=0;i<100;i++)
if(fgets(strng
,11,fp)==NULL)
return 1;
string
[10]=’\0’
}
fclose(fp);
return 0;
}
void Wdata(void)
{
FILE*fp;
int i;
fp=fopen(“OUT.dat”,“W”);
for(i=0;i<10;i++)
{
fprintf(fp,“%d\n”,result
);
printf(“第%d个人的选票数=%d\n”,i+1.re
suit
);
}
fclose(fp);
}
选项
答案
void CountRS() { int i,count,j; char*pf; for(i=0;i<10;i++) result[i]=0; for(i=0;i<100;i++) { pf=string[i]; count=0; while(*pf) { if(*pf==’1’) count++; pf++; } if(count<=5) for(j=0;j<10;j++) result[j]+=string[i][j]=’0’; } }
解析
CountRs()要实现的功能是:统计每个人的选票数并把得票数依次存入result[O]~result[9]中。因此解答本题的关键在于如何判断一个人是否得票。
在for循环语句中自变量i从0到100,对数蛆string
中字符1的个数进行统计并赋给变量count,如果变量count的值大于5。说明这是一张无效选票,否则在for(j=0;j<10;j++)result[j]+=string
[j]-’0’;语句中把string
[j]的值相加赋给result[j]。就得到了每个人的选票数,本题考察了二堆数组的使用。
转载请注明原文地址:https://kaotiyun.com/show/YAZZ777K
本试题收录于:
三级网络技术题库NCRE全国计算机三级分类
0
三级网络技术
NCRE全国计算机三级
相关试题推荐
结构化布线系统采用的传输介质主要是双绞线和【】。
IPTV系统包括3个基本业务,以下不属于基本业务的是
下列关于虚拟局域网的说法不正确的是
局域网交换机具有很多特点。下列关于局域网交换机的论述中,说法不正确的是
二级域名Ac代表【 】。
下面关于网络信息安全的一些叙述中,不正确的是_______。
防火墙自身有一些限制,它能阻止()。Ⅰ.外部攻击Ⅱ.内部威胁Ⅲ.病毒感染
在因特网电子邮件系统中,电子邮件应用程序()。
在计算机中用于表示电影、电视影像的信息称为【 】。
网桥和路由器都是网络互联的设备,它们的区别在于网桥工作在数据链路层,而路由器工作在______层。
随机试题
幼年类风湿关节炎的诊断主要依赖于
A.紫杉B.葛根C.陈皮D.麻黄E.满山红含大豆素的药材是
思维的基本过程和创造性思维的过程分别是什么?
急性心包压塞病情危急,可先作心包腔穿刺减压缓解,同时输血补液,为争取剖胸抢救时间。()
能增加肺弹性阻力的是
滴虫性阴道炎获得根治的方法
患儿发热,随后出现呕吐和意识障碍。应首先考虑的是()
(2009)图示结构受均布荷载作用,以下内力图和变形图错误的是()。
王先生三年前购买了一套住房,从银行贷了40万元房款,贷款期限15年,假设贷款利率为7%,王先生贷款时采取等额本息还款法。王先生第一个月还了()利息。
按照ITU-T标准,传输速度为9.954Gbps的标准是()。
最新回复
(
0
)