计算机二级c语言机试真题十套
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、
1、程序填空题
函数fun的功能是:计算f(x)=1+x-x^2/.....若x=2.5,函数值为;1.917915 2、程序改错题
给定程序MODT1.C中函数fun的功能是:求整数x的y次方的低三位值。例如,整数5的6次方为15625,此值的低3位值为625
3、程序设计题
请编写函数fun,其功能是:计算并输出当x<0.97时下列多项式的值,直到|Sn-Sn-1|<0.000001为止。Sx=1+0.5x+...............
例如,在主函数中从键盘给x输入0.21后,输出为:s=1.100000
答案第01套填空题:【1.1.1】x
【1.1.2】n
【1.1.3】fabs(t)
改错题:【1.2.1】for(i=1;i<=y;i++)
【1.2.2】t=t%1000;
程序设计题:double fun(double x)
{
int i=0;
double s=1,a=1;
while(fabs(a)>0.000001)
{
a=a*(0.5-i)*x/(i+1);
s+=a;
i++;
}
return s;
}
二、
1、程序填空题
函数fun的功能是:统计长整数n的各个位上出现数字1、2、3的次数,并通过外部(全局)变量c1、c2、c3返回主函数。例如,当n=123114350时,结果应为:c1=3、c2=1、c3=2。
2、程序改错题
给定程序MODT1.C中函数fun的功能是:统计一个无符号整数中各位数字值为零的个数,通过形参传回主函数;并把该整数中各位上最大的数字作为函数值返回。例如,若输入无符号整数30800,则数字值为零的个数为3,各位上数字值最大的是8
3、程序设计题
请编写函数fun,其功能是:计算并输出下列多项式的值:
S=1+1/(1*2)+1/(1*2*3)+....+1/(1*2*3 (50)
例如,在主函数中从键盘给n输入50后,输出为:s=1.718282。
答案第02套填空题:【2.1.1】n%10
【2.1.2】break
【2.1.3】break
改错题:【2.2.1】if(t==0)
【2.2.2】*zero=count;
程序设计题:
double fun(int n)
{
int i;
double s=0,a=1;
for(i=1;i<=n;i++)
{
a=a/i;
s+=a;
}
return s;
}
三、
1、程序填空题
给定程序中,函数fun的功能是:将形参n中,各位上位偶数的数取出,并按原来从高位到低位相反的顺序组成一个新的数,并作为函数值返回。
例如,输入一个整数:27638496,函数返回值为:64862。
2、程序改错题
给定程序MODT1.C中函数fun的功能是:将长整形数中每一位上为奇数的数一次取出,构成一个新的数放在t中。高位仍在高位,低位仍在低位。
例如,当s中的数为:87653142时,t中的数为7531。
3、程序设计题
编写函数fun,其功能是:实现两个字符串的连接(不使用库函数strcat),即把p2所指的字符串连接到p1所指的字符串后。
例如,分别输入下面两个字符串:
FirstString--
SecondString
程序输出:
FirstString--SecondString
第03套填空题:【3.1.1】0
【3.1.2】10*x
【3.1.3】n/10
改错题:【3.2.1】*t=0;
【3.2.2】if(d%2!=0)
程序设计题
void fun(char p1[], char p2[])
{
while(*p1) p1++;
while(*p2)
{
*p1=*p2;
p1++;
p2++;
}
*p1=0;
}
四、
1、程序填空题
给定程序中,函数fun的功能是:在3X4的矩阵中找出在行上最大、在列上最小的那个元素,若没有符合条件的元素则输出相应信息。
例如,有下列矩阵:
1 2 13 4
7 8 10 6
3 5 9 7
程序执行结果为;find;a[2][2]=9
2、程序改错题
给定程序MODT1.C中函数fun的功能是:根据整形形参m的值,计算如下公式的值。
t=1-1/(2*2)-1/(3*3)-......-1/(m*m)
例如,若m中的值为:5,则应输出:0.536389。
3、程序设计题
m个人的成绩在score数组中,请编写函数fun,它的功能是:将低于平均分的人数作为函数值返回,将低于平均分的分数放在below所指的数组中。
例如,当score数组中的数据为;10、20、30、40、50、60、70、80、90时,函数返回的人数应该是4,below中的数据应为:10、20、30、40。
第04套填空题:【4.1.1】j
【4.1.2】0
【4.1.3】i++
改错题:【4.2.1】for(i=2;i<=m;i++)
【4.2.2】y-=1.0/i/i;
程序设计题
int fun(int score[], int m, int below[])
{
int i=0,s=0,n=0;
for(i=0;i s/=m; for(i=0;i { if(score[i] { below[n]=score[i]; n++; } } return n;