国家三级(网络技术)机试模拟试卷 322及答案与解析 一、程序设计题 1 国家三级(网络技术)机试模拟试卷 322答案与解析 一、程序设计题 1 【正确答案】 【试题解析】 根据题意,本程序涉及 10个候选人共 100条记录,其中, 100条记录的选票文件采用二维数组存储其数据,第一维表示 100条记录,第二维表示每条记录中 10个候选人的选中情况。可以通过两个 for循环对 100条记录逐个比对,在第一层 for循环中,对 100条记录的每条记录情况进行扫描,在第二层 for循环语句中,判断数组元素 xxij的值是否等于字符 1,如果等于字符 1,说明第j个人得了一票,则数组元素 yyj加 1。 先定义两个循环变量 i和 j。 指定第一个 for循环的循环条件,循环变量 i从 0开始,等于 100时结束,每循环一次,变量 i的值加 1。 在 for循环中首先判断记录值不等于 1111111111的记录,然后计算 10个候选人的得票数,可以通过一个 for循环,对满足条件的记录中的每个数字再次比对,当数字等于 1时,将第 i个人的票数加 1。 注意,本程序中由于只有数值 1才会被计算到最后的结果中,因此,可以省去判断记录全为 0时记录无效的情况,因为,即使将 0参与到计算中,其计算结果也还是 0,不会影响到最终结果,只需判断记录为全 1时无效即可。