资源描述:
《第4章数组c++习题集答案》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、习题4一、单项选择题1.若有说明inta[3][4];则a数组元素的非法引用是【】A.a[0][2*1]B.a[1][3]C.a[4-2][0]D.a[0][4]【答案】D【解析】数组下标从0开始,a[0][4]的列下标越界。2.在C++语言中,引用数组元素时,其数组下标的数据类型允许是【】A.整型常量B.整型表达式C.整型常量或整型表达式D.任何类型的表达式【答案】C3.以下不正确的定义语句是【】A.doublex[5]={2.0,4.0,6.0,8.0,10.0};B.inty[5]={0,1,3,
2、5,7,9};C.charc1[]={′1′,′2′,′3′,′4′,′5′};D.charc2[]={′x10′,′xa′,′x8′};【答案】B【解析】初始值的个数大于数组的大小,系统会出现编译错误。4.对以下说明语句的正确理解是【】inta[10]={6,7,8,9,10};A.将5个初值依次赋给a[1]至a[5]B.将5个初值依次赋给a[0]至a[4]C.将5个初值依次赋给a[6]至a[10]D.因为数组长度与初值的个数不相同,所以此语句不正确【答案】B5.若有说明:inta[][4]={
3、0,0};则下面不正确的叙述是【】A.数组a的每个元素都可得到初值0B.二维数组a的第一维大小为1C.当初值的个数能被第二维的常量表达式的值除尽时,所得商数就是第一维的大小D.只有元素a[0][0]和a[0][1]可得到初值,其余元素均得不到确定的初值【答案】D【解析】二维数组初始化时,行大小可以省略,被省略的大小根据初值的个数系统来确定,本题中,有2个初值说明是1行4列,所以第一维为1。元素a[0][0]和a[0][1]赋初值为0,其余元素初值系统默认为0。6.以下能对二维数组c进行正确的初始化的语句
4、是【】A.intc[3][]={{3},{3},{4}};B.intc[][3]={{3},{3},{4}};C.intc[3][2]={{3},{3},{4},{5}};D.intc[][3]={{3},{},{3}};【答案】B【解析】二维数组初始化时,行大小可以省略,列大小不可以省略,所以A答案错误。C答案中初始值行数多于数组大小中的行大小,也是错误的。另外初始化时,初值之间不能有空位置,故D错误。7.以下不能对二维数组a进行正确初始化的语句是【】A.inta[2][3]={0};B.inta[]
5、[3]={{1,2},{0}};C.inta[2][3]={{1,2},{3,4},{5,6}};D.inta[][3]={1,2,3,4,5,6};【答案】C8.阅读下面程序,则程序段的功能是【】#includeusingnamespacestd;intmain(){intc[]={23,1,56,234,7,0,34},i,j,t;for(i=1;i<7;i++){t=c[i];j=i-1;while(j>=0&&t>c[j]){c[j+1]=c[j];j--;}c[j+1]=t
6、;}for(i=0;i<7;i++)cout<7、数组实现大到小的降序排列。9.下列选项中错误的说明语句是【】A.chara[]={′t′,′o′,′y′,′o′,′u′,′ ′};B.chara[]={"toyou "};C.chara[]="toyou ";D.chara[]=′toyou ′;【答案】D10.下述对C++语言字符数组的描述中错误的是【】A.字符数组的下标从0开始B.字符数组中的字符串可以进行整体输入/输出C.可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值D.字符数组可以存放字符串【答案】C11.以下二维数组c的定义
8、形式正确的是【】A.intc[3][]B.floatc[3,4]C.doublec[3][4]D.floatc(3)(4)【答案】C12.已知:intc[3][4];则对数组元素引用正确的是【】A.c[1][4]B.c[1.5][0]C.c[1+0][0]D.以上表达都错误【答案】C13.若有以下语句,则正确的描述是【】chara[]="toyou";charb[]={′t′,′o′,′y′,′o′,′u′};A.a数组和b数组的长度相同B