首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
文件IN.DAT中存放有100条对10个候选人进行选举的记录,数存放的格式是每条记录的长度均为10位,第一位表示第一个人的选中情况,第二位表示第二个人的选中情况,依此类推。每一位内容均为字符0或1,1表示此人被选中,0表示此人未被选中,若一张选票选中人数小
文件IN.DAT中存放有100条对10个候选人进行选举的记录,数存放的格式是每条记录的长度均为10位,第一位表示第一个人的选中情况,第二位表示第二个人的选中情况,依此类推。每一位内容均为字符0或1,1表示此人被选中,0表示此人未被选中,若一张选票选中人数小
admin
2011-06-14
56
问题
文件IN.DAT中存放有100条对10个候选人进行选举的记录,数存放的格式是每条记录的长度均为10位,第一位表示第一个人的选中情况,第二位表示第二个人的选中情况,依此类推。每一位内容均为字符0或1,1表示此人被选中,0表示此人未被选中,若一张选票选中人数小于等于5个人时则被认为是无效的选票。函数ReadData()负责将IN.DAT中的内容读人数组inBuf[]中。请编制函数calculate()来统计每个人的选票数并把得票数依次存人outBuf[0]outBuf[9]中,最后写函数WriteData()把结果outBuf[]输出到文件0UT.DAT中。
注意;部分源程序已给出。
请勿改动主函数main()、读函数ReadData()和写函数WriteData()的内容。
试题程序;
#include
#include
#define LINE 100
#define COL 10
#define THR 5
char inBuf[LINE][COL];
int outBuf[COL];
int ReadData(void);
void WriteData(void);
void calculate(void)
{
}
void main()
{
int i;
for(i=0;i<10;i++)outBuf
=0;
if(ReadData())
{
printf("IN.DAT can’t be opened\007\n");
return;
}
calculate();
WriteData();
}
int ReadData(void)
{
FILE*fp;
int i;
char tt[COL+1];
if((fp=fopen("IN.DAT","r"))==NULL)
return 1;
for(i=0;i
{
if(fgets(tt,COL+1,fp)==NULL)
return 1;
memcpy(inBuf
,tt,COL);
}
felose(fp);
return 0;
}
void WriteData(void)
{
FILE*fp;
int i;
fp=fopen("OUT.DAT","w");
for(i=0;i<10;i++)
{
fprintf(fp,"%d\n",outBuf
);
printf("the amounts of number%d’svotes=%d\n",i+1,outBuf
);
}
fclose(fp);
}
选项
答案
void calculate(void) { int i,j,k,sum,use_i; int useful[LINE]={-1}; k=0; for(i=0;i
THR) //如果该选票选的人数小于等于5人,则视为无效选票 { useful[k]=i; //将有效的选票的标号放到数组useful中 k++; //将有效选票的计数器加1 } } use_i=k; //记录有效选票的个数 for(j=0;j
解析
本题主要考查如何将读入的字符型的数字转换成对应的整型数字。由于数字0~9的ASCII码是连续增加的,故可用0~9的ASCII码值减去0的ASCII码值而得到数字0~9。本题的另一个难点是如何在除去无效选票之后再进行统计。在程序中选用的是用一个数组useful[]来记录有效选票的号码,将该数组中的值作为选票数组inBuf[][]的行下标,从而实现了对无效选票的排除。
转载请注明原文地址:https://jikaoti.com/ti/vVU7FFFM
本试题收录于:
三级网络技术题库NCRE全国计算机三级分类
0
三级网络技术
NCRE全国计算机三级
相关试题推荐
关于因特网中的主机和路由器,以下说法是正确的。Ⅰ.主机通常需要实现TCP协议Ⅱ.路由器必须实现TCP协议Ⅲ.必须实现IP协议Ⅳ.路由器必须实现IP协议
著名的SNMP协议使用的公开端口为______。
在两个物理网络之间至少有一条在物理上连接的线路,但并不能保证两个网络——定能够进行数据交换是()。
ISDN为了使通信网络内部的变化对终端用户是透明的,它必须提供一个标准的()。
主机板有多种分类方法,按系统总线带宽分类的是()。
分发公钥需要以某种特定方式来分发。目前采用()来分发公钥。
操作系统NetWare和WindowsNTServer是______上常用的网络操作系统。
下列关于InternetFTP的叙述中,错误的一条是______。
______是SNMP网络管理系统的核心。
基于网络安全的需要,网络操作系统一般提供了四级安全保密机制:注册安全性,用户信任者权限与()。Ⅰ.最大信任者权限屏蔽Ⅱ.物理安全性Ⅲ.目录与文件属性Ⅳ.协议安全性
随机试题
无环鸟苷:
患者,男性,37岁,经常出现血尿,肾区绞痛,疑为肾结石,需要做静脉肾盂造影术,以下正确的是
在招标人自行招标的项目中,被质疑人只能是()。
某建筑结构平面如图,设计做法为:C25现拌混凝土浇捣,木模支护,层高4.2米,框架柱截面尺寸为500×500,板厚及梁截面尺寸见图示。梁、板的混凝土浇捣工程量,并套定额计算工程直接费。
下列关于票据签章的表述中,正确的有()。
根据《会计法》的规定,对于伪造、变造会计凭证、会计账簿或者编制虚假财务会计报告的行为,尚不构成犯罪的,由县级以上人民政府财政部门予以通报,并可以对单位、直接负责的主管人员和其他直接责任人员处以一定数额的罚款。其中,对直接负责的主管人员和其他直接责任人员处以
注册会计师在对X公司2014年度财务报表进行审计时,下列情况中注册会计师应出具带强调事项段无保留意见审计报告的是()。
人的身心发展有不同的阶段。“心理断乳期”一般发生在()。
A.条件(1)充分,但条件(2)不充分.B.条件(2)充分,但条件(1)不充分.C.条件(1)和(2)单独都不充分,但条件(1)和条件(2)联合起来充分.D.条件(1)充分,条件(2)也充分.E.条件(1)和(2)单独都不充分,条件(1)和条件(2
GetWhatYouPayFor?NotAlways[A]ThemostexpensiveelectioncampaigninAmericanhistoryisover.ExecutivesacrossAmer
最新回复
(
0
)