return0;
}
五、程序设计题(根据功能要求,编写程序,实现其功能,2题,每题10分,共20分)
1.请编写一个函数longsum(intn),用递归函数完成运算:
sum(n)=1*1+2*2+…+n*n,递归表达式为sum(n)=sum(n-1)+n2。
?
请勿修改主函数main和其他函数中的任何内容,仅在函数sum的花括号中填写若干语句。
#include?
usingnamespacestd;
longsum(intn)?
?
?
{
?
?
intsum=0;
while(n>0)
{sum+=n*n;
n--;}
returnsum;
}?
intmain()?
?
?
{?
intn;?
cout<<"输入n:
";?
?
?
?
?
cin>>n;?
?
cout<<"结果为:
"<return0;
}?
?
?
2.请编写函数fun(),该函数的功能是判断字符串是否为回文,若是则函数返回1,主函数中输出YES;否则返回0,主函数中输出NO。
回文是指顺读和倒读都一样的字符串。
?
?
?
例如:
字符串LEVEL是回文,而字符串123312就不是回文。
请勿修改主函数main和其他函数中的任何内容,仅在函数fun的花括号中填写若干语句。
?
?
?
#include
usingnamespacestd;?
?
#defineN80?
?
?
intfun(char*str)?
?
?
{?
?
?
}?
?
?
intmain()?
?
?
{?
chars[N];?
?
?
?
?
cout<<"Enterastring:
"<?
?
?
?
gets(s);?
?
?
?
?
cout<<"\n\n";?
?
?
?
?
puts(s);?
?
?
?
?
if(fun(s))?
?
?
?
?
cout<<"YES\n";?
?
?
?
?
else?
?
?
?
?
cout<<"NO\n";?
return0;
}?
?
?
模拟试卷(A卷)
参考答案及评分标准
一、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在括号内。
每小题2分,共15小题,30分)
1.D2.C3.D4.D5.C6.C7、D8.D9.B10.A
11.A12、A13.A14.D15.B
二、改错题(每题有几处错误,在错误处画线,并写出正确语句。
每找对1个错误,加1分,每修改正确1个错误,再加1分。
共3小题,共16分)
1.答案:
#include
usingnamespacestd;
constfloatpi=3.1416;
constfloatr=3.2;
intmain(){
floats1,c1;
//r=2.8;
c1=pi*r*r;
s1=2*pi*r;
cout<return0;
}
2.答案:
#include
usingnamespacestd;
doublefun(doublex,doubley)
{inti;
doubles=1;
for(i=1;i<=y;i++)
s=s*x;
returns;
}
intmain()
{doublex=2.5,y=3;
cout<<"pow(2.5,2):
"<cout<<"pow(2.5,3):
"<return0;
}
3.答案:
#include
usingnamespacestd;
voidsort(intp[],intn)
{inti,j,temp;
for(i=0;ifor(j=i;jif(p[i]>p[j])
{temp=p[i];
p[i]=p[j];
p[j]=temp;}
}
intmain(void)
{inta1[6]={1,3,2,5,4,6},*pi,i;
pi=a1;
sort(pi,6);
for(i=0;i<6;i++)cout<cout<return0;
}
三、程序理解分析题(分析下列程序代码,并在程序右侧写出程序的输出结果,共4小题,每题4分,共16分)
1.运行时的输出结果是15
2.运行时的输出结果是7
3.运行时的输出结果是i1=4,i2=3
4.运行时的输出结果是201,21,202,22
四、程序填空题(在横线处填上一个语句,使程序实现其相应的功能。
每空3分,共6个空,总共18分)
1、m/*第一空*/
n/*第二空*/
min/*第三空*/
2.m=i;/*第一空*/
min=a[m][0];/*第二空*/
min=a[m][j];/*第三空*/
五、程序设计题(根据功能要求,编写程序,实现其功能,2题,每题10分,共20分)
1.【参考答案】?
?
longsum(int?
n)
?
{?
if(n==1)?
?
?
?
?
return?
1;?
?
?
?
?
else?
?
?
?
?
?
?
return?
n*n+sum(n-1);?
}
2.【参考答案】
?
?
?
int?
fun(char?
*str)?
?
?
{?
?
?
?
int?
i,n=0,fg=1;?
?
?
?
char?
*p=str;?
?
?
?
while(*p)?
?
?
?
{?
n++;?
p++;?
}?
?
?
?
for(i=0;i?
?
?
if(str[i]==str[n-1-i])?
;?
?
?
?
else?
?
?
?
{?
fg=0;?
break;?
}?
?
?
?
return?
fg;?
?
?
?
}?