当前位置:文档之家› 计算机应用基础2010级期末考试试题-A-评分标准

计算机应用基础2010级期末考试试题-A-评分标准

参考答案和评分标准
二、填空题(每空1分,共20分)
三、程序分析题。

(阅读以下程序,写出程序运行后的结果。

每题4分,共20分)
1.a=3,b=1
2. 6
3. LanZhou
WuWei
4.CHINA#
5. 5
6
7
四、编程题(请用所学的计算机语言编写程序。

每题10分,共30分)
变量声明2分,输入2分,结构4分,输出2分。

1、输入圆的半径,计算并输出圆的面积。

main( )
{
float s,r;
scanf("%f",&r);
s=3.14*r*r;;
printf("s=%f\n",s);}
2、计算分段函数:
x+10 x≤-10
x+5 -10<x≤0
y=
x-5 0<x≤10
x-10 x>10
main( )
{
float x,y;
scanf("%f",&x);
if (x<=-10) y=x+10;
else if (x<=0) y=x+5;
else if (x<=10) y=x-5;
else y=x-10;
printf("y=%f\n",y);
}
注意,此题目可以有多种编程方法,此处仅给出一种。

3、求Fibonacci数列中前20个数并输出。

Fibonacci数列的前两个数为1,1,以后每个数都是其前面两个数之和,即f1=f2=1,且fi=fi-1+fi-2。

要求每行输出5个数。

方法一:
main()
{
int i;
long f1,f2,f3;
f1=1;
f2=1;
printf("%8ld %8ld",f1,f2);
for(i=3;i<=20;i++)
{
f3=f1+f2;
printf("%8ld",f3);
if (i%5==0) printf("\n");
f1=f2;
f2=f3;
}
}
方法二:
long fib(int n)
{
if (n==1||n==2) return 1;
return fib(n-2)+fib(n-1);
}
main()
{
int i;
for(i=1;i<=20;i++)
{
printf("%8ld",fib(i));
if (i%5==0) printf("\n"); }
}
方法三:
main()
{
int i;
long f[20]={1,1};
for(i=2;i<20;i++)
f[i]=f[i-2]+f[i-1];
for(i=0;i<20;i++)
{
if (i%5==0) printf("\n");
printf("%8ld",f[i]);
}
}。

相关主题