您好,欢迎访问三七文档
数组练习选择题1.下列说法正确的是A.数组如果没有初始化,也没有被赋值,则每个元素的默认值为0B.在给数组初始化时,可以只给其中几个元素赋初值C.数值型数组不能使用赋值语句整体赋值,但字符型数组可以使用赋值语句整体赋一个字符串D.用一个字符型数组来存放字符串时,可以存放与数组长度祥等数目的有效字符2.下列说法正确的是A.在定义一维数组时,数组长度可以任意整形表达式表示(变量不行)B.在定义二维数组时,数组的第一维和第二维长度只能省略其中一个(行不能省略)C.数组元素的下标可以用整型表达式或整型常量表示D.数组元素的下标必须为整形常量3.对两个数组a和b进行如下初始化:chara[]=”ABCDEF”;charb[]={‘A’,’B’,’C’,’D’,’E’,’F’};则下面描述正确的是()A.a和b数组完全相同B.a和b中都存放字符串C.sizeof(a)比sizeof(b)大D.sizeof(a)与sizeof(b)相同4.以下程序的输出结果是()#includeiostreamusingnamespacestd;intmain(){charw[4][10]={ABCD,EFGH,IFKL,MnOP},k;for(k=1;k3;k++)coutw[k];return0;}A.ABCDEFGHB.EFGHIFKLC.ABCDEFGHIJKLD.EFGHIFKLMNOP5.有以下程序:main(){chara[20]=abcd,b[]=12345;intm,n;for(m=strlen(a),n=2;b[n]!='\0';m++,n++){a[m]=b[n];}coutab;}A.abcd12345,12345B.abcd,12345C.abcd12345,abcdD.abcd345,123456.2、有以下程序:#includeiostream#includestringusingnamespacestd;intmain(){chararr[2][4];strcpy(arr[0],”you”);strcpy(arr[1],”me”);arr[0][3]=‘&’;coutarr[0]endl;return0;}该程序执行后的输出结果是()A.you&meB.youC.meD.yo&7.下列数组定义中,会产生错误的是()A.inta[]={‘0’,’1’,’2’,’3’,’4’,’5’,’6’};B.inta[10]={1,2,3,4,5,6};C.chara[5]=“hello”;D.chara[5]={‘h’,’e’,’l’,’l’,’o’};8.若有以下程序:#includeiostreamusingnamespacestd;intmain(){intI;inta[3][3]={‘1’,’2’,’3’,’4’,’5’,’6’,’7’,’8’,’9’};for(I=0;I3;I++)couta[i][1]””;coutendl;return0;}执行后的输出结果是A.495255B.147C.258D.5053569.下面程序的运行结果是()#includeisotreamvoidmian(){charch[7]={“12ab56”};intI,s=0;for(I=0;ch[I]=’0’&&ch[I]=’9’;I+=2)s=10*s+ch[I]-‘0’;couts;}A.1B.12a56bC.12ab56D.125610.若有以下程序:voidmain(){inta[]={4,0,2,3,1},I,j,t;for(I=1;I5;I++){t=a[I];j=I-1;while(j=0&&ta[j]){a[j+1]=a[j];a[j]=t;j--;}}}则该程序段的功能是()A.对数组a进行插入排序(升序)B.对数组a进行插入排序(降序)C.对数组a进行选择排序(升序)D.对数组a进行选择排序(降序)11.若有说明“inta[3][4]={0};”,则下面正确的是A.只有元素a[0][0]可得到初值0B.此说明语句不正确C.数组a各元素都可得到初值,但其值不一定是0D.数组a中每个元素均可得到初值012.以下程序的输出结果是()#includeiostramintmain(){charb[]=”Hello,you”;b[5]=0;coutb;}A.Hello,youB.HelloC.HeloOyouD.Hell13.当执行下面的程序时,如果输入ABC,则输出结果是()#includeiostream#includestringintmain(){charss[10]=”1,2,3,4,5”;cinss;strcat(ss,”6789”);coutss;}A.ABC6789B.ABC67C.12345ABC6D.ABC45678914.以下程序的输出结果是()#includeiostramintmain(){intb[3][3]={0,1,2,0,1,2,0,1,2},I,j,t=1;for(I=0;I3;i++)for(j=I;j=I;j++)t=t+b[I][b[j][j]];coutt;}A.3B.4C.1D.915.以下不能正确赋进行字符串赋初值的语句是A.charstr[5]=”good!”;B.charstr[]=”good!”;C.char*str=”good!”;D.charstr[5]={‘g’,’o’,’o’,’d’};16.以下不能正确定义二维数组的选项是A.inta[2][2]={{1},{2}};B.inta[2][2]={{1},2,3};C.inta[2][]={{1,2},{3,4}};D.inta[][2]={1,2,3,4};17.在”intb[][3]={{1},{3,2},{4,5,6},{0}};”,中b[2][2]的值是A.0B.5C.6D.218.对于”int*pa[5];”的描述,()是正确的A.pa是一个指向数组的指针,所指向的数组时5个int型元素B.pa是一个指向某数组第5个元素的指针,该元素是int型元素C.pa[5]表示某个数组的第5个元素的值D.pa是一个具有5个元素的指针数组,每个元素是一个int型指针19.在下列对字符数组进行初始化中()是正确的A.chars1[]=”abcd”;B.chars2[3]=”xyz”;C.chars3[][]={‘a’,’x’,’y’};D.chars4[2][3]={“xyz”,”mnp”};20.有以下程序:main(){chara[10]=”AbcdEfg9”,b[10];intj,k=0;for(j=0,k=0;a[j]!=’\0’;j++){if((a[j]=’A’&&a[j]=’Z’||(a[j]=’0’&&a[j]=’9’)){b[k]=a[j];k++;}}b[k]=0;coutb+3;}执行结果为()A.AbcdEfg9B.bcdfgC.AE9D.以上都不正确填空题1.以下函数的功能是删除字符串s中的所有数字字符。请填空。voiddele(char*s){intn=0;for(i=0;s[i];i++){if()s[n+1]=s[i];}s[n]=‘\0’;}2.若有0到9之间不同的士个数构成一个三位数,下面程序将统计出其有多少种方法,请填空完成此程序。#includeiostreamusingnamespacestd;intmain(){inti,j,k;for(i=1;i=9;i++){for(j=0;j=9;j++){if()continue;else{for(k=0;k=9;k++)if()count++;}}}coutcoutnendl;return0;}5.将下面的语句段(a)补充完整,使其和语句段(b)在功能上完全等价。(a)doubles=0.0;;intk=0;do{s+=d;k++;d=1.0/(k*k+1);}while();(b)doubles=1.0;for(intk=1;k=10;k++)s+=1.0/(k*k+1);6.定义如下数组:inti;inty[2][3]={2,4,6,8,10,12};则下面语句的输出结果是:for(I=0;I2;i++)couty[1-i][i+1]”,”;[答案]10,127.下面程序的输出结果是#includeisotramvoidmain(){charstr[]=”SSSWLIA”,c;intk;for(k=2;(c=str[k]!=’\0’);k++){swith(c){case‘i’;++k;break;case‘1’;conintue;default:coutc;coutinue;}cout’*’}}8.当运行以下程序时,从键盘输入:AhaMAAha,然后回车,则下面程序的运行结果是#includeiostreamintmian(){chars[80],c=’a’;intI=0;cins;while(s[I]!=’\0’){if(s[I]==c-)a[I]=s[I]-32;elseif(s[I]==c-32)s[I]=s[I]+32;I++;}Couts;}
本文标题:数组测试题
链接地址:https://www.777doc.com/doc-5274496 .html