大学MOOC 程序设计语言(C)-下(华北科技学院)1457763163 最新慕课完整章节测试答案
第九周函数(一)
小测验1:
1、单选题:
C语言是由( )构成。
选项:
A: 主程序和子程序
B: 主函数和子函数
C: 一个主函数和若干功能函数
D: 主函数和子程序
答案: 【 一个主函数和若干功能函数】
2、单选题:
以下对C语言函数的有关描述中,正确的是( )。
选项:
A: 调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参
B: C函数既可以嵌套定义又可以递归调用
C: 函数必须有返回值,否则不能使用函数
D: C程序中有调用关系的所有函数必须放在同一个源程序文件中
答案: 【 调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参】
3、单选题:
以下说法中正确的是( )。
选项:
A: C语言程序总是从第一个的函数开始执行
B: 在C语言程序中,要调用的函数必须在main()函数中定义
C: C语言程序总是从main()函数开始执行
D: C语言程序中的main()函数必须放在程序的开始部分
答案: 【 C语言程序总是从main()函数开始执行】
小测验2:
1、单选题:
C语言程序中,如果变量做函数参数,则当函数调用时( )。
选项:
A: 实参和形参各占一个独立的存储单元
B: 实参和形参共用一个存储单元
C: 可以由用户指定是否共用存储单元
D: 计算机系统自动确定是否共用存储单元
答案: 【 实参和形参各占一个独立的存储单元】
2、单选题:
一个函数返回值的类型是由( )决定的。
选项:
A: return语句中表达式的类型
B: 在调用函数时临时指定
C: 定义函数时指定的函数类型
D: 调用该函数的主调函数的类型
答案: 【 定义函数时指定的函数类型】
3、单选题:
在C语言的函数中,下列正确的说法是( )。
选项:
A: 必须有形参
B: 形参必须是变量名
C: 可以有也可以没有形参
D: 数组名不能作形参
答案: 【 可以有也可以没有形参】
小测验3
1、单选题:
若函数的形参为一维数组,则下列说法中正确的是( )。
选项:
A: 调用函数时的对应实参必为数组名
B: 形参数组可以不指定大小
C: 形参数组的元素个数必须等于实参数组的元素个数
D: 形参数组的元素个数必须多于实参数组的元素个数
答案: 【 形参数组可以不指定大小】
2、单选题:
若调用一个函数,且此函数中没有return语句,则正确的说法是( )。
选项:
A: 该函数没有返回值
B: 该函数返回若干个系统默认值
C: 该函数能返回一个用户所希望的函数值
D: 该函数返回一个不确定的值
答案: 【 该函数返回一个不确定的值】
3、单选题:
在函数的说明和定义时若没有指出函数的类型,则( )。
选项:
A: 系统自动地认为函数的类型为整型
B: 系统自动地认为函数的类型为字符型
C: 系统自动地认为函数的类型为实型
D: 编译时会出错
答案: 【 系统自动地认为函数的类型为整型】
4、单选题:
下面叙述中正确的是( )。
选项:
A: 对于用户自己定义的函数,在使用前必须加以说明
B: 说明函数时只需要说明返回类型
C: 函数必须返回一个值
D: 空函数不完成任何操作,所以在程序设计中没有用处
答案: 【 对于用户自己定义的函数,在使用前必须加以说明】
5、单选题:
C语言允许函数返回值类型缺省定义,此时该函数隐含的返回值类型是( )。
选项:
A: float型
B: int 型
C: long 型
D: double型
答案: 【 int 型】
第十周 总结与练习
小测验1
1、单选题:
下列不属于C语言中关键字的是( )
选项:
A: long
B: print
C: default
D: typedef
答案: 【 print】
2、单选题:
若int i=10; 执行下列程序后,变量i的正确结果是( )switch ( i )
{
case 9: i+=1;
case 10: i+=1;
case 11: i+=1;
default : i+=1; }
选项:
A: 13
B: 12
C: 11
D: 10
答案: 【 13】
3、单选题:
以下选项中合法的字符常量是( )
选项:
A: “B”
B: ‘n’
C: ‘68’
D: E
答案: 【 ‘n’】
4、单选题:
若int类型数据占2个字节,则unsigned int类型数据的取值范围是 ( )
选项:
A: 0~255
B: 0~65535
C: -32768~32767
D: -256~255
答案: 【 0~65535】
5、单选题:
能正确表示逻辑关系:“a≥=10或a≤0”的C语言表达式是( )
选项:
A: a>=10 or a<=0
B: a>=0|a<=10
C: a>=10 &&a<=0
D: a>=10‖a<=0
答案: 【 a>=10‖a<=0】
6、单选题:
若有以下数组说明,则i=10;a[a[i]]元素数值是( )
选项:
A: 10
B: 9
C: 6
D: 5
答案: 【 6】
7、单选题:
语句while(!y);中的表达式!y等价于( )
选项:
A: y==0
B: y!=1
C: y=!0
D: y==1
答案: 【 y==0】
8、单选题:
以下对一维数组a的正确说明是( )
选项:
A: char a(10);
B: int a[];
C: int k=5,a[k];
D: char a[3]={‘a’,’b’,’c’};
答案: 【 char a[3]={‘a’,’b’,’c’};】
9、单选题:
以下对结构变量stul中成员age的非法引用是( )struct student { int age; int num; 16 }stu1,*p; p=&stu1;
选项:
A: stu1.age
B: student.age
C: p->age
D: (*p).age
答案: 【 student.age】
10、单选题:
对于同类型的指针变量,不可能进行的运算是( )
选项:
A: -
B: =
C: +
D: ==
答案: 【 + 】
第十周函数(二)
小测验1
1、单选题:
在下列结论中,有一个是错误的,它是 ( )
选项:
A: C语言允许函数的递归调用
B: 有些递归程序是不能用非递归算法实现的
C: C语言不允许在函数定义中再定义函数
D: 递归函数就是函数中可以定义其他函数
答案: 【 有些递归程序是不能用非递归算法实现的】
2、单选题:
如果有个递归函数是求 2*4*6*……*(2n) 的积,则递归的公式和条件可以表达为( )
选项:
A: f(n)=2*n*f(n-1) 边界条件 当 n==1 f(n)=2
B: f(n)=2*f(2*n-1) 边界条件 当 n==0 f(n)=1
C: f(n)=2*nf(2*n-1) 边界条件 当 n==1 f(n)=1
D: f(n)=2*f(2*n-1) 边界条件 当 n==0 f(n)=2
答案: 【 f(n)=2*n*f(n-1) 边界条件 当 n==1 f(n)=2】
小测验2
1、单选题:
一段楼梯有N阶,可以一次上1阶,也可以一次上2阶,用递归函数调用实现,计算多少种走法。则递归公式和边界条件是( )
选项:
A: f[n]=f[n-1]+f[n-2] 边界条件 当n=1 f[1]=0, 当n =2 f[2]=1
B: f[n]=f[n-1]+f[n-2] 边界条件 当n=1 f[1]=1, 当n =2 f[2]=2
C: f[n]=f[n-1] 边界条件 当n=1 f[1]=1
D: f[n]= f[n-2] 边界条件 当n=2 f[2]=1
答案: 【 f[n]=f[n-1]+f[n-2] 边界条件 当n=1 f[1]=1, 当n =2 f[2]=2】
2、单选题:
一只小猴子,摘了一堆水果,第一天吃了水果的一半,又多吃了一个;第二天吃了剩下水果的一半,又多吃了一个;依次类推….到第十天,发现只剩下了10个水果,请问这只猴子到底摘了多少个水果? 写成递归函数。
选项:
A: 

B: 
C: 
D:
