导航
您当前的位置:首页 > 试卷大全 > 计算机类 > 计算机等级考试

2007年09月全国计算机等级考试三级数据库技术机试真题及答案

类型:全真试卷  解析:有解析  年份:2010以前  ★收藏  ✚纠错

上机真题

1、已知数据文件in.dat中存有200个4位数,并已调用读函数ReadDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:如果4位数各位上的数均是奇数,则统计出满足此条件的个数cnt并把这些4位数按从大到小的顺序存入数组b中。最后main()函数调用写函数writeDat()把结果cnt及数组b中符合条件的4位数输出到out.dat文件中。

    注意:部分源程序已经给出。

    程序中已定义数组a[200],b[200],已定义变量:cnt。

    请勿改动数据文件in.dat中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。

    [试题源程序]

    # include<stdio.h>

    # define MAX 200

    int a[MAX],b[MAX],cnt=0;

    void writeDat();

    void jsVal()

    {

   ……此处隐藏1062个字…… nbsp;  /*将a[i]保存到数组b中,统计变量增1*/

    }

    }

    for(i=0;i<cnt-1;i++)    /*给数组b中的元素排序*/

    for(j=i+1;j<cnt;j++)

    if(b[i]<b[j])

    {

    k=b[i];b[i]=b[j];b[j]=k;

    }

    }

[解析] 本题主要考查的是数位分解问题。本题主要考查的知识点包括:C语言循环结构,if判断语句和逻辑表达式,以及分解多位整数的算术运算。首先用for循环和变量i遍历数组的每个元素,对于某一元素a[i],用%和/运算将各个位数分解出来,存放到数组ss中,使用for循环和变量j判断数组ss中各个数是否都是奇数,如果是则标志flag置为1,有一个是偶数则置为0并且跳出循环,如果flag为1,则说明满足都是奇数的条件,将该数a[i]存入数组b中,统计变量cnt增1,当所有元素遍历完后给数组b中的元素使用冒泡排序法进行排序。

 

Tags:三级数据库技术机试 石油党建“每日答题”2019年9月26日试题及答案 石油党建“每日答题”2019年9月27日试题及答案 石油党建“每日答题”2019年9月2
您可能感兴趣的试卷
相关试卷
关于我们 | 用户指南 | 版权声明 | 给我留言 | 联系我们 | 积分商城 | 答案求助 | 网站地图
Copyright © 2024 www.daanwo.com All Rights Reserved