首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
文件IN.DAT中存放有100条对10个候选人进行选举的记录,数存放的格式是每条记录的长度均为10位,第一位表示第一个人的选中情况,第二位表示第二个人的选中情况,依此类推。每一位内容均为字符0或1,1表示此人被选中,0表示此人未被选中,若一张选票选中人数小
文件IN.DAT中存放有100条对10个候选人进行选举的记录,数存放的格式是每条记录的长度均为10位,第一位表示第一个人的选中情况,第二位表示第二个人的选中情况,依此类推。每一位内容均为字符0或1,1表示此人被选中,0表示此人未被选中,若一张选票选中人数小
admin
2011-06-14
82
问题
文件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://kaotiyun.com/show/EraZ777K
本试题收录于:
三级网络技术题库NCRE全国计算机三级分类
0
三级网络技术
NCRE全国计算机三级
相关试题推荐
关于ADSL,以下______是错误的。
在广域网中,T1标准规定的速率为______。
在网络管理中,通常在图形报告中使用颜色指示网络设备的运行状态。在配色方案中,表示设备处于错误状态使用的颜色为()。
在利用SET协议的购物流程中,持卡人、商家、支付网关等都要通过______来验证交易各方的身份,防止冒名顶替。
分发公钥需要以某种特定方式来分发。目前采用()来分发公钥。
当一台主机A配置了同一网络中另一台主机B相同的IP地址时,会()。
局域网交换机的特性是()。Ⅰ低交换传输延迟Ⅱ高传输带宽Ⅲ允许10Mbps/100Mbps共存Ⅳ局域网交换机可以支持虚拟局域网服务
下列有关公钥加密体制的说法,错误的是()。
关于网络性能管理步骤的描述中,错误的是()。
因特网用户使用的FTP客户端应用程序通常有三种类型,即传统的FTP命令行、浏览器和【 】。
随机试题
简述知觉的基本特征。
男,35岁,无痛性颈部淋巴结肿大1个月。胸部、腹部CT未发现深部淋巴结肿大。淋巴结活检示结构破坏,找到R-S细胞,下列哪项表现一般不出现
X线摄影中表示X线“质”的是
患者因全身关节疼痛,长期服用某药而出现自发性骨折。导致该不良反应的药物是
半夏白术天麻汤主治证的病机是
水利水电工程建设用地的移民安置,应按照就地安置的原则,首先在本乡本县内安置,在本乡本县内安置不了的,应在工程受益地方安置。()
A银行新近推出了一款名为“轻松换房”的个人住房贷款产品,该产品主要针对有改善居住条件需求的客户,该产品的特点有:①通过将客户原有房产进行抵押贷款,弥补客户支付首付款后家庭其他消费资金的不足;②与房产开发商合作,举办“购房让利”活动;③开通贷款“绿色通道”,
政企分开的主要措施包括()。
Thedesiretolearnanewlanguageisoftenbornofadesiretofindadeeperexperienceabroad.Whentravelingtoacountry
Amobilephoneisnolongerjustaphone--itisalsoamusicplayer,videocameraandpersonalorganizer.Andmobilephoneswi
最新回复
(
0
)