1】 有5个人坐在一起,问第5个人多少岁,他说比第4个人大2岁;问第4个人岁数,他说比第3个人大2岁;问第3个人,又说比第2个大2岁;问第2个人,说比第1个人大2岁;最后问第1个人,他说他10岁。用递归算法求解第5个人的年龄。
【题2】 以下是两个求解最大公约数(能同时整除两个正整数的最大约数)算法的伪代码。
//-------------------------------------------//
Algorithm GCD_enumeration// 枚举算法
begin
input m, n
if m < n then k ← m
else k ← n
repeat
r1 ← m mod k// 令r1为m除以k的余数
r2 ← n mod k
k ← k-1
until (r1 = 0) and (r2 = 0)
output k+1
end
//-------------------------------------------//
Algorithm GCD_Euclid// 欧几里德算法
begin
input m, n
r ← m mod n
while r <> 0 do
begin
m ← n
n ← r
r ← m mod n
end
output n
end
//-------------------------------------------//
⑴ 用程序流程图表示上述两个算法;
⑵ 分析和比较两个算法的时间效率。
【题3】 设有数列1, 1, 2, 3, 5, 8, 13, …;以下C语言程序计算该数列的第20项。补充下划线处的程序代码。
void main()
{int a, b, c, i;
a=1;
b=1;
for(i= ; i<=20; i++)
{c= ;
a=b;
b= ;
}
printf("%d\n", c);
}
【题4】 编写程序(语言不限)输入n,输出n行下列图形,下图n=6。
ZABCDEFGHIJ
YXWVUTSRQ
【题2】 以下是两个求解最大公约数(能同时整除两个正整数的最大约数)算法的伪代码。
//-------------------------------------------//
Algorithm GCD_enumeration// 枚举算法
begin
input m, n
if m < n then k ← m
else k ← n
repeat
r1 ← m mod k// 令r1为m除以k的余数
r2 ← n mod k
k ← k-1
until (r1 = 0) and (r2 = 0)
output k+1
end
//-------------------------------------------//
Algorithm GCD_Euclid// 欧几里德算法
begin
input m, n
r ← m mod n
while r <> 0 do
begin
m ← n
n ← r
r ← m mod n
end
output n
end
//-------------------------------------------//
⑴ 用程序流程图表示上述两个算法;
⑵ 分析和比较两个算法的时间效率。
【题3】 设有数列1, 1, 2, 3, 5, 8, 13, …;以下C语言程序计算该数列的第20项。补充下划线处的程序代码。
void main()
{int a, b, c, i;
a=1;
b=1;
for(i= ; i<=20; i++)
{c= ;
a=b;
b= ;
}
printf("%d\n", c);
}
【题4】 编写程序(语言不限)输入n,输出n行下列图形,下图n=6。
ZABCDEFGHIJ
YXWVUTSRQ