知到答案程序设计基础20春夏完整网课章节测试答案.docx
《知到答案程序设计基础20春夏完整网课章节测试答案.docx》由会员分享,可在线阅读,更多相关《知到答案程序设计基础20春夏完整网课章节测试答案.docx(7页珍藏版)》请在冰豆网上搜索。
![知到答案程序设计基础20春夏完整网课章节测试答案.docx](https://file1.bdocx.com/fileroot1/2023-1/27/d5a6a3df-c761-4be8-9811-d00997985c2f/d5a6a3df-c761-4be8-9811-d00997985c2f1.gif)
知到答案程序设计基础20春夏完整网课章节测试答案
2020知到答案程序设计基础(20春夏)完整网课章节测试答案
1
例如:
第一章单元测试
1、问题:
若有定义int a[10];则数组元素的下标的下限和上限分别是( )。
选项:
A:
1和10
B:
0和9
C:
1和9
D:
0和1
答案:
【0和9】
2、问题:
定义如下变量和数组,则下列程序段的输出结果是( )。
inti,x[3][3]={1,2,3,4,5,6,7,8,9};
for(i=0;i<3;i++)
if(i%2!
=1)printf(“%d”,x[i][i]);
选项:
A:
19
B:
17
C:
39
D:
37
答案:
【19
】
3、问题:
下面一段程序是有关字符串操作的,该段程序的输出结果是( )。
#include
#include
main()
{
charp1[10]=”abc”,p2[]=”ABC”;
strcat(p1,p2);
printf(“%s”,p1);
}
选项:
A:
abc
B:
ABC
C:
abcabc
D:
abcABC
答案:
【abcABC
】
4、问题:
下列四个选项中能正确定义一维数组的语句是( )。
选项:
A:
intnum[0…2017];
B:
intnum[];
C:
#defineN2017
intnum[N];
D:
intN=2017;intnum[N];
答案:
【#defineN2017
intnum[N];
】
5、问题:
若有以下说明,则数值为4的表达式是( )。
inta[12]={1,2,3,4,5,6,7,8,9,10,11,12};
charc=’a’,d,g;
选项:
A:
a[4]
B:
a[‘d’-c]
C:
a[g-c]
D:
a[‘d’-‘c’]
答案:
【a[‘d’-c]
】
6、问题:
以下是有关二维数组定义和初始化的语句,其中错误的是( )。
选项:
A:
intx[2][3]={1,2,3,4,5,6};
B:
intx[][3]={0};
C:
intx[2][3]={{1,2},{3,4},{5,6}};
D:
intx[][3]={{1,2,3},{4,5,6}};
答案:
【intx[2][3]={{1,2},{3,4},{5,6}};】
7、问题:
以下关于C语言字符数组的描述中错误的是( )。
选项:
A:
字符数组中的内容不一定是字符串
B:
字符数组只能存放字符串
C:
可以用输入语句把字符串整体输入给字符数组
D:
不可以用赋值语句给字符数组名赋字符串
答案:
【字符数组只能存放字符串】
8、问题:
设有chararray[]=“China”;
则数组array所占的空间字节数是( )。
选项:
A:
5
B:
7
C:
6
D:
4
答案:
【6】
9、问题:
如下程序段是对字符串的操作,运行后的结果为( )。
chara[3],b[]=“China”;
a=b;
printf(“%s”,a);
选项:
A:
编译出错
B:
运行后将输出China
C:
运行后将输出Chi
D:
运行后将输出ch
答案:
【编译出错】
10、问题:
有以下有关字符串操作的程序,程序运行后的输出的结果是( )。
main()
{
chars[]=“012xy8s34f4w2”;
inti,n=0;
for(i=0;s[i]!
=0;i++)
if(s[i]>=‘0’&&s[i]<=‘9’)
n++;
printf(“%d”,n);
}
选项:
A:
3
B:
0
C:
7
D:
8
答案:
【8】
第二章单元测试
1、问题:
C语言程序中可以有多个函数,但只能有一个主函数。
选项:
A:
错
B:
对
答案:
【对】
2、问题:
函数的实参可以是常量,变量或表达式。
选项:
A:
对
B:
错
答案:
【对】
3、问题:
递归调用算法与相同功能的非递归算法相比,主要问题在于重复计算太多,而且调用本身需要分配额外的空间、传递数据和控制,所以时间和空间开销通常都比较大。
选项:
A:
对
B:
错
答案:
【对】
4、问题:
在一个被调用函数中,关于return语句使用的描述,错误的是( )。
选项:
A:
被调用函数中可以不用return语句
B:
被调用函数中,一个return语句可以返回多个值给调用函数
C:
被调用函数中,如果有返回值,就一定要有return语句
D:
被调用函数中可以使用多个return语句
答案:
【被调用函数中,一个return语句可以返回多个值给调用函数】
5、问题:
C语言中函数返回值的类型是由( )决定的。
选项:
A:
调用函数时临时决定
B:
定义函数时所指定的函数类型
C:
return语句中的表达式类型
D:
调用该函数的主调函数的类型
答案:
【定义函数时所指定的函数类型】
6、问题:
有如下函数调用语句:
func(rec1,rec2+rec3,(rec4,rec5));则该函数调用语句中,含有的实参个数是( )。
选项:
A:
4
B:
有语法错
C:
5
D:
3
答案:
【3】
7、问题:
以下程序的输出结果是( )。
#include
intfunc(inta,intb)
{
return(a+b);
}
intmain()
{
intx=2,y=5,z=8,r;
r=func(func(x,y),z);
printf(“%d”,r);
return0;
}
选项:
A:
15
B:
14
C:
13
D:
12
答案:
【15】
8、问题:
C语言规定,程序中各函数之间( )。
选项:
A:
不允许直接递归调用也不允许间接递归调用
B:
不允许直接递归调用允许间接递归调用
C:
既允许直接递归调用也允许间接递归调用
D:
允许直接递归调用不允许间接递归调用
答案:
【既允许直接递归调用也允许间接递归调用】
9、问题:
若有以下调用语句,则不正确的fun()函数的首部是( )。
main()
{
…
inta[50],n;
…
fun(n,&a[9]);
…
}
选项:
A:
voidfun(intp,int*s)
B:
voidfun(intn,inta)
C:
voidfun(intm,intx[])
D:
voidfun(ints,inth[41])
答案:
【voidfun(intn,inta)】
10、问题:
函数的实参传递到形参有两种方式:
值传递和地址传递。
选项:
A:
错
B:
对
答案:
【对】