2017年计算机三级数据库机试编写函数题及参考答案
- 计算机三级
- 关注:3.04W次
同学们在备考计算机三级考试过程中,要有针对性地复习。下面是小编分享的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