全国等级考试资料网

计算机等级考试二级C语言上机题2

分类: 计算机  时间: 2023-08-04 18:12:49  作者: 全国等级考试资料网 
☆ 题目2
已知数据文件in.dat中存有200个四位数,并已调用读函数readdat()把这些数存入数组a中,请考生编制一函数jsval(),其功能是:如果四位数各位上的数字均是0或2或4或6或8,则统计出满足此条件的个数cnt,并把这些四位数按从大到小的顺序存入数组b中。最后main( )函数调用写函数writedat()把结果cnt以及数组b中符合条件的四位数输出到out.dat文件中。
 注意:部分源程序存在文件prog1.c中。
 程序中已定义数组:a[200],b[200],已定义变量:cnt
 请勿改动数据文件in.dat中的任何数据、主函数main()、读函数readdat()和写函数writedat()的内容。
#include
#define max 200
int a[max], b[max], cnt = 0 ;

void jsval()
{ int i,j,qw,bw,sw,gw;
 for(i=0;i { qw=a[i]/1000; bw=a[i]/100;
 sw=a[i]0/10; gw=a[i];
 if(qw&&qw%2==0&&bw%2==0&&sw%2==0&&gw%2==0) b[cnt++]=a[i];
 }
 for(i=0;i for(j=i+1;j if(b[i]}

void readdat()
{
 int i ;
 file *fp ;
 fp = fopen("in.dat", "r") ;
 for(i = 0 ; i < max ; i++) fscanf(fp, "%d", &a[i]) ;
 fclose(fp) ;
}

相关文章

猜你喜欢

精选计算机