(2)
?x??xii?0nnn?1?1/?x?1?
?
?x?1,n?0?
(3)
?2i?1ni?1?2n?1
?n?1? ?n?1?
(4)
2??2i?1?n ?i?1
1、16 试写一算法,自大至小依次输出顺序读入得三个整数X,Y与Z得值
解:
int max3(int x,int y,int z) { }
1、17 已知k阶斐波那契序列得定义为
if(x>y)
if(x>z) return x; else return z; if(y>z) return y; else return z;
else
f0?0,f1?0,…,fk?2?0,fk?1?1; fn?fn?1?fn?2???fn?k,n?k,k?1,?
试编写求k阶斐波那契序列得第m项值得函数算法,k与m均以值调用得形式在函数参数表中出现。
解:k>0为阶数,n为数列得第n项 int Fibonacci(int k,int n) {
if(k<1) exit(OVERFLOW); int *p,x; p=new int[k+1]; if(!p) exit(OVERFLOW); int i,j;
for(i=0;i
}
for(i=k+1;i
return p[k];
x=p[0];
for(j=0;j
}
1、18 假设有A,B,C,D,E五个高等院校进行田径对抗赛,各院校得单项成绩均已存入计算机,并构成一张表,表中每一行得形式为牽駘珐猻鉤宝潷。 项目名称 解:
typedef enum{A,B,C,D,E} SchoolName; typedef enum{Female,Male} SexType; typedef struct{
char event[3]; //项目 SexType sex; SchoolName school; int score;
性别 校名 成绩 得分 编写算法,处理上述表格,以统计各院校得男、女总分与团体总分,并输出。
} Component; typedef struct{
int MaleSum;
//男团总分
int FemaleSum; //女团总分 int TotalSum; //团体总分
} Sum;
Sum SumScore(SchoolName sn,Component a[],int n) { }
1、19 试编写算法,计算i!*2得值并存入数组a[0、、arrsize-1]得第i-1个分量中(i=1,2,…,n)。假设计算机中允许得整数最大值为maxint,则当n>arrsize或对某个kk?1?k?n?,使k!?2iSum temp; temp、MaleSum=0; temp、FemaleSum=0; temp、TotalSum=0; int i;
for(i=0;i
temp、TotalSum=temp、MaleSum+temp、FemaleSum; return temp;
if(a[i]、sch