当前位置:学者斋 >

计算机 >计算机三级 >

2017年计算机三级数据库机试编写函数题及参考答案

2017年计算机三级数据库机试编写函数题及参考答案

同学们在备考计算机三级考试过程中,要有针对性地复习。下面是小编分享的2017年计算机三级数据库机试编写函数题及参考答案,欢迎大家练习!

2017年计算机三级数据库机试编写函数题及参考答案

1.已知数据文件中存有300个四位数,并已调用读函数Rdata()把这些数存入数组a中,请编写函数primeNum(),其功能是:求出所有这些四位数中素数的个数count,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的四位数按从小到大的顺序进行排序。最后调用写函数Wdata(),把结果输出到文件中。

例如,5591是素数,则该数满足条件存入数组b中,且个数count=count+1。9812是非素数,则该数不满足条件,不存入数组b中,count值也不加1。

【答案】

void primeNum()

{ int j, i, value;

for (i=0; i<300; i++)

if (isP(a[i]))

{ b[count] = a[i];

count++;

}

for (i=0; i<count-1; p="" i++)<="">

for (j=i+1; j<count; p="" j++)<="">

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

{ value = b[i];

b[i] = b[j];

b[j] = value;

}

}

2.下列程序的功能是:把s字符串中的.所有字符左移一个位置,字符串中的第一个字符移到最后。请编写函数change(char*s)实现程序要求,最后调用函数readwriteDAT()从文件中读取50组数据,分别得出结果,且把结果输出到文件中。

例如,s字符串中原有内容为:Mn.123xyZ,调用该函数后结果为:n.123xyZM。

【答案】

void change(char*s)

{ int i, strl;

char ch;

strl = strlen(s);

ch = *s;

for (i=0; i<strl-1; p="" i++)<="">

*(s+i) = *(s+i+1);

*(s+strl-1) = ch;

}

3.下列程序的功能是:找出所有100以内(含100)满足i、i+4、i+10都是素数的整数i(i+10也在100以内)的个数count以及这些i之和sum。请编写函数primeNum()实现程序要求的功能,最后调用函数writeDat(),把结果count和sum输出到文件中。

【答案】

void primeNum()

{ int i;

for(i=2;i<=90;i++)

if(isPrime(i) && isPrime(i+4) && isPrime(i+10))

{ count++;

sum+=i;

}

}

  • 文章版权属于文章作者所有,转载请注明 https://xuezhezhai.com/jsj/sanji/ej3pq9.html
专题