大学计算机-计算思维练习题集
本题考核对函数的理解和运用。
(1)该程序是计算阶乘,即Fact(n) = n!,该程序的流程图如图(a)所示,所以Fact(4) = 4! = 24,(B)正确,具体过程如图(b)所示。
(2)由题(1)中图(b)知,在执行Fact(4)的过程中,Fact函数被调用了4次,所以在执行Fact(5)时,Fact函数会被调用5次,(C)正确。
具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素(II)”以及第六章课件。
15. 已知函数Fact的程序如下,回答下列问题:
Long Int Fact(int n) { Long Int x;
If (n > 1) { x = Fact(n-1);
return (n+x)*2; }
else return 1;
}
(1)Fact(4)的值为_____。
(A) 14; (B) 24; (C) 44; (D) 64;
大学计算机-计算思维练习题集
答案:C 解释:
本题考核算法的循环结构
由程序分析可知,调用函数4次,因此Fact(4)的值为44。
具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”以及第六章课件。
(2)在执行Fact(4)的过程中,Fact函数被调用的次数为_____。
(A) 3; (B) 4; (C) 5; (D) 6;
答案:B 解释:
本题考核算法的循环结构
由程序分析可知,调用函数4次,因此Fact(4)的值为44。
具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”以及第六章课件。
16. 已知程序如下,回答下列问题:
main() {
int i, n;
long sum = 0, p = 1; ... //输入n值的语句,略 for (i=1; i<=n; i++) { p = p * i; sum = sum + p;
}
... //输出sum值的语句,略
}
该程序实现的功能为_____。
(A) sum = 1*2*3*...*n; (B) sum = 1!+2!+...+n!; (C) sum = 1+2+3+...+n; (D) sum = 1*2+2*3+(n-1)*n; (E) 上述都不正确。
大学计算机-计算思维练习题集
答案:B 解释:
本题考核算法的分析及循环结构的分析 很明显是1到n的阶乘,选B。
具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”以及第六章课件。 17. 已知程序如下,回答下列问题:
(10) main()
(20) { int counter; (30) ... //输入N值的语句,略 (40) long product = 1; (50) for counter = 1 to N step 2 (60) { product = product * counter; } (70) return product; (80) }
(1)该程序实现的功能为_____。
(A) product = 1*2*3*...*(N-1); (B) product = 1+ 2+3+...+ (N-1); (C) product = 1*3*5*...* (N-1); (D) product = 1+3+5+...+(N-1); (E) 上述都不正确。
答案:C 解释:
本题考核算法与结构分析
由程序可知,为求1*3*5*...*(N-1)的值。
具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”以及第六章课件。
(2)当程序行(60)执行了3次以后,Product和Counter的值分别为_____。
(A) 105,5; (B) 15,7; (C) 15,5; (D) 105,7;
(E) 上述都不正确。
大学计算机-计算思维练习题集
答案:C 解释:
本题考核算法与结构分析
在程序执行3次时,Product带入可知为15,Counter为5。
具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”以及第六章课件。
18. 已知如下多元素变量,回答下列问题:
(1)已知I=2;J=4;则M[I][J]的值为_____。
(A) 44; (B) 83;(C) 22; (D) 21; (E)上述都不正确。
答案:A 解释:
本题考核数据结构及算法分析。 (1)看表得知M[2][4]=44。
具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”以及第六章课件。
(2)已知I=2;J=2;则M[I+1][J+1]的值为_____。
(A) 39; (B) 11;(C) 0; (D) 16; (E)上述都不正确。
答案:C 解释:
本题考核数据结构及算法分析。 (2)看表得知M[3][3]=0。
具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”以及第六章课件。
(3)已知I=1;J=1;则M[I+1][J]+2的值为_____。
大学计算机-计算思维练习题集
(A) 13; (B) 47;(C) 8; (D) 10; (E)上述都不正确。
答案:B 解释:
本题考核数据结构及算法分析。
(3)看表得知M[2][1]+2=47。
具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”以及第六章课件。
(4)执行下列程序,回答问题。
(10) int I = 3,J; (20) int Sum1=0,Sum2=0; (30) For J=1 to 4 Step 1 (40) { Sum1 = Sum1 + M[I][J]; (50) Sum2 = Sum2 + M[J][I]; }
上述程序执行完成后,Sum1和Sum2的值分别为_____。
(A) 576, 576; (B) 136, 175; (C) 149,105; (D) 105,149; (E)上述都不正确。
答案:C 解释:
本题考核数据结构及算法分析。
(4)4次循环Sum1=149,Sum2=105。
具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”以及第六章课件。
(5)执行下列程序,回答问题。
(10) int J; (20) int Sum1=0,Sum2=0; (30) For J=1 to 4 Step 1 (40) { Sum1 = Sum1 + M[J][J]; (50) Sum2 = Sum2 + M[5-J][5-J]; } 上述程序执行完成后,Sum1和Sum2的值分别为_____。